From 64d03c85c955b9861e42ee0c303508e974fc0f5a Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 29 Mar 2020 22:45:34 +0100 Subject: [PATCH 01/14] fix stale issues messages --- .github/workflows/stale.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 7bbc0505..c1841de1 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -13,7 +13,7 @@ jobs: - uses: actions/stale@v1 with: repo-token: ${{ secrets.GITHUB_TOKEN }} - stale-issue-message: 'Stale issue message' - stale-pr-message: 'Stale pull request message' + stale-issue-message: 'This issue has been automatically marked as stale. You have a week to explain why you believe this is an error.' + stale-pr-message: 'This PR has been automatically marked as stale. You have a week to explain why you believe this is an error.' stale-issue-label: 'no-issue-activity' - stale-pr-label: 'no-pr-activity' + stale-pr-label: 'no-pr-activity' \ No newline at end of file From 2e0a863ef7b47fc4c92062392df75ce59bdf63aa Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Fri, 17 Apr 2020 00:34:22 +0100 Subject: [PATCH 02/14] Update documentation, add ssh-client to bench build, expose MariaDB port in development --- .devcontainer/docker-compose.yml | 2 ++ build/bench/Dockerfile | 1 + development/README.md | 29 ++++++++++++++++++++++++----- 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 43498259..383e60ef 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -8,6 +8,8 @@ services: volumes: - ../installation/frappe-mariadb.cnf:/etc/mysql/conf.d/frappe.cnf - mariadb-vol:/var/lib/mysql + ports: + - 3306:3306 redis-cache: image: redis:alpine diff --git a/build/bench/Dockerfile b/build/bench/Dockerfile index 78a2381c..8bb85e5f 100644 --- a/build/bench/Dockerfile +++ b/build/bench/Dockerfile @@ -39,6 +39,7 @@ RUN install_packages \ redis-tools \ rlwrap \ tk8.6-dev \ + ssh-client \ # VSCode container requirements net-tools \ # PYTHON diff --git a/development/README.md b/development/README.md index 2f08d3d1..cc01b0e9 100644 --- a/development/README.md +++ b/development/README.md @@ -47,7 +47,7 @@ Run the following commands in the terminal inside the container. You might need ```shell bench init --skip-redis-config-generation --frappe-branch version-12 frappe-bench -cd frappe-bench +cd frappe-bench∏ ``` ### Setup hosts @@ -78,6 +78,7 @@ sed -i '/redis/d' ./Procfile ### Create a new site with bench +Your installation already includes a site for [localhost](http://locahost:8000) You can create a new site with the following command: ```shell @@ -87,11 +88,20 @@ bench new-site sitename for example: ```shell -bench new-site localhost +bench new-site mysite.localhost ``` The command will ask the MariaDB root password. The default root password is `123`. -This will create a new site and a `localhost` directory under `frappe-bench/sites`. +This will create a new site and a `mysite.localhost` directory under `frappe-bench/sites`. +You may need to configure your system /etc/hosts if you're on Linux, Mac, or its Windows equivalent. + +### Launching + +To launch witho +```shell +bench new-site mysite.localhost +``` + Your website will now be accessible on [localhost on port 8000](http://locahost:8000) ### Set bench developer mode on the new site @@ -99,8 +109,17 @@ Your website will now be accessible on [localhost on port 8000](http://locahost: To develop a new app, the last step will be setting the site into developer mode. Documentation is available at [this link](https://frappe.io/docs/user/en/guides/app-development/how-enable-developer-mode-in-frappe). ```shell -bench set-config developer_mode 1 -bench clear-cache +bench --site my.site set-config developer_mode 1 +bench --site my.site clear-cache +``` + +### Install an app + +To install an app we need to fetch it from the appropriate git repo, then install in on the appropriate site + +```shell +bench get-app myapp https://github.com/myusername/myapp.git +bench --site my.site install-app myapp ``` ### Fixing MariaDB issues after rebuilding the container From 5f3c4df4ad24212f5b88aa2ed5c031b3ece3de11 Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Fri, 17 Apr 2020 02:56:30 +0100 Subject: [PATCH 03/14] automatically install python extension --- .devcontainer/devcontainer.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 4bab99fc..4466fe8a 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -8,5 +8,8 @@ "dockerComposeFile": "./docker-compose.yml", "service": "frappe", "workspaceFolder": "/workspace/development", - "shutdownAction": "stopCompose" +"shutdownAction": "stopCompose", +"extensions": [ + "ms-python.python" +] } From 85a824753bd7e8845847407ad7339eb0bd73b53b Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Fri, 17 Apr 2020 02:57:20 +0100 Subject: [PATCH 04/14] Improve documentation, including new instructions for jupyterlab --- development/README.md | 52 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 47 insertions(+), 5 deletions(-) diff --git a/development/README.md b/development/README.md index 2cc4c0d6..8ec4df64 100644 --- a/development/README.md +++ b/development/README.md @@ -2,10 +2,17 @@ ## Prerequisites +In order to start deveping you need to satisfy the folowing prerequisites: + - Docker - docker-compose - user added to docker group +It is recommended you allocate at least 4GB of RAM to docker: + +- [Instructions for Windows](https://docs.docker.com/docker-for-windows/#resources) +- [Instructions for MacOOS](https://docs.docker.com/docker-for-mac/#resources) + ## Bootstrap Containers for development Clone and change directory to frappe_docker directory @@ -47,7 +54,7 @@ Run the following commands in the terminal inside the container. You might need ```shell bench init --skip-redis-config-generation --frappe-branch version-12 frappe-bench -cd frappe-bench∏ +cd frappe-bench ``` ### Setup hosts @@ -115,14 +122,16 @@ bench --site my.site clear-cache ### Install an app -To install an app we need to fetch it from the appropriate git repo, then install in on the appropriate site +To install an app we need to fetch it from the appropriate git repo, then install in on the appropriate site: + +You can check [VSCode container remote extension documentation](https://code.visualstudio.com/docs/remote/containers#_sharing-git-credentials-with-your-container) regarding git creedential sharing. ```shell bench get-app myapp https://github.com/myusername/myapp.git bench --site my.site install-app myapp ``` -### Start development +### Start Frappe without debugging Execute following command from the `frappe-bench` directory. @@ -130,6 +139,8 @@ Execute following command from the `frappe-bench` directory. bench start ``` +You can now login with user `Administrator` and the password you choose when creating the site. + Note: To start bench with debugger refer section for debugging. ### Fixing MariaDB issues after rebuilding the container @@ -178,7 +189,7 @@ And enter the interactive shell for the development container with the following docker exec -e "TERM=xterm-256color" -w /workspace/development -it devcontainer_frappe_1 bash ``` -### Visual Studio Code Python Debugging +### Start Frappe with Visual Studio Code Python Debugging To enable Python debugging inside Visual Studio Code, you must first install the `ms-python.python` extension inside the container. @@ -199,4 +210,35 @@ honcho start \ worker_default ``` -This command starts all processes with the exception of Redis (which is already running in separate container) and the `web` process. The latter can can finally be started from the debugger tab of VSCode. +This command starts all processes with the exception of Redis (which is already running in separate container) and the `web` process. The latter can can finally be started from the debugger tab of VSCode by clicking on the "play" button. + +You can now login with user `Administrator` and the password you choose when creating the site. + +## Developing using the interactive console + +You can launch the interactive shell console with: + +```shell +bench console +``` + +To work with a more advanced interactive environment that supports full Jupyter Notebooks you can run JupyterLab inside the Python Venv, which will already be activated. + +First you'll need to foward port 8090 from your debug container. Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Forward a port` and type port `8090`. + +You can then install and launch jupyterlab appropriately: + +```shell +pip install jupyterlab +jupyter lab --ip=0.0.0.0 --no-browser --port=8090 +``` + +Then replace `my.site` with your site and run the following code in a Jupyter cell: + +```python +import frappe +frappe.init(site='my.site', sites_path='/workspace/development/frappe-bench/sites') +frappe.connect() +frappe.local.lang = frappe.db.get_default('lang') +frappe.db.connect() +``` \ No newline at end of file From 5f823fe37cee7c4277b01ec28d50d902d169cf50 Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Fri, 17 Apr 2020 03:26:16 +0100 Subject: [PATCH 05/14] doc jupyter updates --- development/README.md | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/development/README.md b/development/README.md index 8ec4df64..bb770c1b 100644 --- a/development/README.md +++ b/development/README.md @@ -216,26 +216,21 @@ You can now login with user `Administrator` and the password you choose when cre ## Developing using the interactive console -You can launch the interactive shell console with: +You can launch a simple interactive shell console in the terminal with: ```shell bench console ``` -To work with a more advanced interactive environment that supports full Jupyter Notebooks you can run JupyterLab inside the Python Venv, which will already be activated. +More likely, you may want to launch VSCoode interactive console based on Jupyter kernel. -First you'll need to foward port 8090 from your debug container. Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Forward a port` and type port `8090`. +Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Python: Select interpreter to start Jupyter server` and select `/workspace/development/frappe-bench/env/bin/python`. -You can then install and launch jupyterlab appropriately: +Then, run the commmand `Python: Show Python interactive windows` from the VSCode command palette. -```shell -pip install jupyterlab -jupyter lab --ip=0.0.0.0 --no-browser --port=8090 -``` +Replace `my.site` with your site and run the following code in a Jupyter cell: -Then replace `my.site` with your site and run the following code in a Jupyter cell: - -```python +```python import frappe frappe.init(site='my.site', sites_path='/workspace/development/frappe-bench/sites') frappe.connect() From ac85e3631129d90b762f50d609df815471e3542f Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Fri, 17 Apr 2020 18:59:10 +0100 Subject: [PATCH 06/14] Typo --- development/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/development/README.md b/development/README.md index bb770c1b..63bc2b46 100644 --- a/development/README.md +++ b/development/README.md @@ -226,7 +226,7 @@ More likely, you may want to launch VSCoode interactive console based on Jupyter Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Python: Select interpreter to start Jupyter server` and select `/workspace/development/frappe-bench/env/bin/python`. -Then, run the commmand `Python: Show Python interactive windows` from the VSCode command palette. +Then, run the commmand `Python: Show Python interactive window` from the VSCode command palette. Replace `my.site` with your site and run the following code in a Jupyter cell: From 8397499e85aecd7b0d07ac9f491877e6682189bb Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Fri, 17 Apr 2020 20:15:11 +0100 Subject: [PATCH 07/14] Fixes --- .devcontainer/docker-compose.yml | 2 -- development/README.md | 11 +---------- 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/.devcontainer/docker-compose.yml b/.devcontainer/docker-compose.yml index 383e60ef..43498259 100644 --- a/.devcontainer/docker-compose.yml +++ b/.devcontainer/docker-compose.yml @@ -8,8 +8,6 @@ services: volumes: - ../installation/frappe-mariadb.cnf:/etc/mysql/conf.d/frappe.cnf - mariadb-vol:/var/lib/mysql - ports: - - 3306:3306 redis-cache: image: redis:alpine diff --git a/development/README.md b/development/README.md index 63bc2b46..755ddaaf 100644 --- a/development/README.md +++ b/development/README.md @@ -102,15 +102,6 @@ The command will ask the MariaDB root password. The default root password is `12 This will create a new site and a `mysite.localhost` directory under `frappe-bench/sites`. You may need to configure your system /etc/hosts if you're on Linux, Mac, or its Windows equivalent. -### Launching - -To launch witho -```shell -bench new-site mysite.localhost -``` - -Your website will now be accessible on [localhost on port 8000](http://locahost:8000) - ### Set bench developer mode on the new site To develop a new app, the last step will be setting the site into developer mode. Documentation is available at [this link](https://frappe.io/docs/user/en/guides/app-development/how-enable-developer-mode-in-frappe). @@ -140,7 +131,7 @@ bench start ``` You can now login with user `Administrator` and the password you choose when creating the site. - +Your website will now be accessible on [on port 8000](http://locahost:8000) Note: To start bench with debugger refer section for debugging. ### Fixing MariaDB issues after rebuilding the container From 5a66c1d5d0a0e7c9331995d6303b14dc1edcad11 Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 01:18:21 +0100 Subject: [PATCH 08/14] Add travis badge --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index a71ff7dd..d3cc5ad2 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ +| Develop | [![Build Status](https://travis-ci.com/frappe/frappe_docker.svg?branch=master)](https://travis-ci.com/frappe/frappe_docker) | +|---------|-----------------------------------------------------------------------------------------------------------------------------| +| Master | [![Build Status](https://travis-ci.com/frappe/frappe_docker.svg?branch=develop)](https://travis-ci.com/frappe/frappe_docker) | + + ## Getting Started The templates in this repository will help deploy Frappe/ERPNext docker in a production environment. From d356a6f44a2c06b078b658529b983665be9c92ef Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 13:43:09 +0100 Subject: [PATCH 09/14] Update documentation, fix a few small errors, reorganize, add instructions for unattended install --- development/README.md | 115 +++++++++++++++++++++++------------------- 1 file changed, 64 insertions(+), 51 deletions(-) diff --git a/development/README.md b/development/README.md index 755ddaaf..f4335ba7 100644 --- a/development/README.md +++ b/development/README.md @@ -85,7 +85,6 @@ sed -i '/redis/d' ./Procfile ### Create a new site with bench -Your installation already includes a site for [localhost](http://locahost:8000) You can create a new site with the following command: ```shell @@ -98,6 +97,12 @@ for example: bench new-site mysite.localhost ``` +The same command can be run non-interactively as well: + +```shell +bench new-site mysite.localhost --mariadb-root-password 123 --admin-password admin +``` + The command will ask the MariaDB root password. The default root password is `123`. This will create a new site and a `mysite.localhost` directory under `frappe-bench/sites`. You may need to configure your system /etc/hosts if you're on Linux, Mac, or its Windows equivalent. @@ -107,8 +112,8 @@ You may need to configure your system /etc/hosts if you're on Linux, Mac, or its To develop a new app, the last step will be setting the site into developer mode. Documentation is available at [this link](https://frappe.io/docs/user/en/guides/app-development/how-enable-developer-mode-in-frappe). ```shell -bench --site my.site set-config developer_mode 1 -bench --site my.site clear-cache +bench --site mysite.localhost set-config developer_mode 1 +bench --site mysite.localhost clear-cache ``` ### Install an app @@ -119,9 +124,17 @@ You can check [VSCode container remote extension documentation](https://code.vis ```shell bench get-app myapp https://github.com/myusername/myapp.git -bench --site my.site install-app myapp +bench --site mysite.localhost install-app myapp ``` +For example, to install ERPNext (from the master branch): + +```shell +bench get-app erpnext https://github.com/frappe/erpnext.git +bench --site mysite.localhost install-app erpnext +``` + + ### Start Frappe without debugging Execute following command from the `frappe-bench` directory. @@ -134,52 +147,6 @@ You can now login with user `Administrator` and the password you choose when cre Your website will now be accessible on [on port 8000](http://locahost:8000) Note: To start bench with debugger refer section for debugging. -### Fixing MariaDB issues after rebuilding the container - -The `bench new-site` command creates a user in MariaDB with container IP as host, for this reason after rebuilding the container there is a chance that you will not be able to access MariaDB correctly with the previous configuration -The parameter `'db_name'@'%'` needs to be set in MariaDB and permission to the site database suitably assigned to the user. - -This step has to be repeated for all sites available under the current bench. -Example shows the queries to be executed for site `localhost` - -Open sites/localhost/site_config.json: - - -```shell -code sites/localhost/site_config.json -``` - -and take note of the parameters `db_name` and `db_password`. - -Enter MariaDB Interactive shell: - -```shell -mysql -uroot -p123 -hmariadb -``` - -Execute following queries replacing `db_name` and `db_password` with the values found in site_config.json. - -```sql -UPDATE mysql.user SET Host = '%' where User = 'db_name'; FLUSH PRIVILEGES; -SET PASSWORD FOR 'db_name'@'%' = PASSWORD('db_password'); FLUSH PRIVILEGES; -GRANT ALL PRIVILEGES ON `db_name`.* TO 'db_name'@'%'; FLUSH PRIVILEGES; -EXIT; -``` - -## Manually start containers - -In case you don't use VSCode, you may start the containers manually with the following command: - -```shell -docker-compose -f .devcontainer/docker-compose.yml up -d -``` - -And enter the interactive shell for the development container with the following command: - -```shell -docker exec -e "TERM=xterm-256color" -w /workspace/development -it devcontainer_frappe_1 bash -``` - ### Start Frappe with Visual Studio Code Python Debugging To enable Python debugging inside Visual Studio Code, you must first install the `ms-python.python` extension inside the container. @@ -227,4 +194,50 @@ frappe.init(site='my.site', sites_path='/workspace/development/frappe-bench/site frappe.connect() frappe.local.lang = frappe.db.get_default('lang') frappe.db.connect() -``` \ No newline at end of file +``` + +### Fixing MariaDB issues after rebuilding the container + +The `bench new-site` command creates a user in MariaDB with container IP as host, for this reason after rebuilding the container there is a chance that you will not be able to access MariaDB correctly with the previous configuration +The parameter `'db_name'@'%'` needs to be set in MariaDB and permission to the site database suitably assigned to the user. + +This step has to be repeated for all sites available under the current bench. +Example shows the queries to be executed for site `localhost` + +Open sites/localhost/site_config.json: + + +```shell +code sites/localhost/site_config.json +``` + +and take note of the parameters `db_name` and `db_password`. + +Enter MariaDB Interactive shell: + +```shell +mysql -uroot -p123 -hmariadb +``` + +Execute following queries replacing `db_name` and `db_password` with the values found in site_config.json. + +```sql +UPDATE mysql.user SET Host = '%' where User = 'db_name'; FLUSH PRIVILEGES; +SET PASSWORD FOR 'db_name'@'%' = PASSWORD('db_password'); FLUSH PRIVILEGES; +GRANT ALL PRIVILEGES ON `db_name`.* TO 'db_name'@'%'; FLUSH PRIVILEGES; +EXIT; +``` + +## Manually start containers + +In case you don't use VSCode, you may start the containers manually with the following command: + +```shell +docker-compose -f .devcontainer/docker-compose.yml up -d +``` + +And enter the interactive shell for the development container with the following command: + +```shell +docker exec -e "TERM=xterm-256color" -w /workspace/development -it devcontainer_frappe_1 bash +``` From 2cf40627b4a831851d03c15fd09054793b4f1d10 Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 13:59:44 +0100 Subject: [PATCH 10/14] Updated jupyter instructions --- development/README.md | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/development/README.md b/development/README.md index f4335ba7..b90adfcd 100644 --- a/development/README.md +++ b/development/README.md @@ -149,7 +149,7 @@ Note: To start bench with debugger refer section for debugging. ### Start Frappe with Visual Studio Code Python Debugging -To enable Python debugging inside Visual Studio Code, you must first install the `ms-python.python` extension inside the container. +To enable Python debugging inside Visual Studio Code, you must first install the `ms-python.python` extension inside the container. This should have already happened automatically, but depending on your VSCode config, you can force it by: - Click on the extension icon inside VSCode - Search `ms-python.python` @@ -170,7 +170,7 @@ honcho start \ This command starts all processes with the exception of Redis (which is already running in separate container) and the `web` process. The latter can can finally be started from the debugger tab of VSCode by clicking on the "play" button. -You can now login with user `Administrator` and the password you choose when creating the site. +You can now login with user `Administrator` and the password you choose when creating the site, if you followed this guide's unattended install that password is going to be `admin`. ## Developing using the interactive console @@ -180,22 +180,30 @@ You can launch a simple interactive shell console in the terminal with: bench console ``` -More likely, you may want to launch VSCoode interactive console based on Jupyter kernel. +More likely, you may want to launch VSCode interactive console based on Jupyter kernel. + +First of all, we need to install Jupyter in the correct environment, which can be done with the following command: + +```shell +/workspace/development/frappe-bench/env/bin/python -m pip install jupyter ipykernel +``` Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Python: Select interpreter to start Jupyter server` and select `/workspace/development/frappe-bench/env/bin/python`. Then, run the commmand `Python: Show Python interactive window` from the VSCode command palette. -Replace `my.site` with your site and run the following code in a Jupyter cell: +Replace `mysite.localhost` with your site and run the following code in a Jupyter cell: ```python import frappe -frappe.init(site='my.site', sites_path='/workspace/development/frappe-bench/sites') +frappe.init(site='mysite.localhost', sites_path='/workspace/development/frappe-bench/sites') frappe.connect() frappe.local.lang = frappe.db.get_default('lang') frappe.db.connect() ``` +The first command can take a few seconds to be executed, this is to be expected. + ### Fixing MariaDB issues after rebuilding the container The `bench new-site` command creates a user in MariaDB with container IP as host, for this reason after rebuilding the container there is a chance that you will not be able to access MariaDB correctly with the previous configuration From 776a827a8c3c041da84e0f4ad52375740dfb64aa Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 14:00:35 +0100 Subject: [PATCH 11/14] Added an opinionated set of extensions that will provide a common base for development and tutorials --- .devcontainer/devcontainer.json | 8 +++++++- .vscode/extensions.json | 3 +-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 4466fe8a..3bd4d9ed 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -10,6 +10,12 @@ "workspaceFolder": "/workspace/development", "shutdownAction": "stopCompose", "extensions": [ - "ms-python.python" + "ms-python.python", + "auchenberg.vscode-browser-preview", + "grapecity.gc-excelviewer", + "mtxr.sqltools", + "visualstudioexptteam.vscodeintellicode", + "yzhang.markdown-all-in-one", + "bierner.markdown-emoji" ] } diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 0b370274..fbf7d101 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -4,8 +4,7 @@ // List of extensions which should be recommended for users of this workspace. "recommendations": [ - "ms-vscode-remote.remote-containers", - "ms-python.python" + "ms-vscode-remote.remote-containers" ], // List of extensions recommended by VS Code that should not be recommended for users of this workspace. "unwantedRecommendations": [ From 03fae6e63dc4893e363e3e0bb2e04ab332634160 Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 16:37:21 +0100 Subject: [PATCH 12/14] FINALLY vscode and jupyter works in the documentation --- development/README.md | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/development/README.md b/development/README.md index b90adfcd..4c7ae4fa 100644 --- a/development/README.md +++ b/development/README.md @@ -32,10 +32,6 @@ VSCode should automatically inquiry you to install the required extensions, that - through command line `code --install-extension ms-vscode-remote.remote-containers` - clicking on the button at the following link: [Remote - Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) - searching for extension `ms-vscode-remote.remote-containers` -- Install Python for VSCode - - through command line `code --install-extension ms-python.python` - - clicking on the button at the following link: [install](https://marketplace.visualstudio.com/items?itemName=ms-python.python) - - searching for extension `ms-python.python` After the extensions are installed, you can: @@ -177,19 +173,19 @@ You can now login with user `Administrator` and the password you choose when cre You can launch a simple interactive shell console in the terminal with: ```shell -bench console +ench --site mysite.localhost console ``` More likely, you may want to launch VSCode interactive console based on Jupyter kernel. -First of all, we need to install Jupyter in the correct environment, which can be done with the following command: +Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Python: Select interpreter to start Jupyter server` and select `/workspace/development/frappe-bench/env/bin/python`. + +The first step is installing and updating the required software. Usually the frappe framework may require an older version of Jupyter, while VSCode likes to move fast, this can [cause issues](https://github.com/jupyter/jupyter_console/issues/158). For this reason we need to run the following command. ```shell -/workspace/development/frappe-bench/env/bin/python -m pip install jupyter ipykernel +/workspace/development/frappe-bench/env/bin/python -m pip install --upgrade jupyter ipykernel ipython ``` -Launch VSCode command palette (cmd+shift+p or ctrl+shift+p), run the command `Python: Select interpreter to start Jupyter server` and select `/workspace/development/frappe-bench/env/bin/python`. - Then, run the commmand `Python: Show Python interactive window` from the VSCode command palette. Replace `mysite.localhost` with your site and run the following code in a Jupyter cell: From d07faa84b839b88761648333aa380a927f147e6d Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 16:51:53 +0100 Subject: [PATCH 13/14] clenup extensions --- .devcontainer/devcontainer.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 3bd4d9ed..6c462bef 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -14,8 +14,6 @@ "auchenberg.vscode-browser-preview", "grapecity.gc-excelviewer", "mtxr.sqltools", - "visualstudioexptteam.vscodeintellicode", - "yzhang.markdown-all-in-one", - "bierner.markdown-emoji" + "visualstudioexptteam.vscodeintellicode" ] } From 018af3292ea27b493f6e07680e747b1b9ca97f26 Mon Sep 17 00:00:00 2001 From: Davide Bortolami Date: Sun, 19 Apr 2020 19:02:22 +0100 Subject: [PATCH 14/14] Update development/README.md Co-Authored-By: Revant Nandgaonkar --- development/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/development/README.md b/development/README.md index 4c7ae4fa..373ea1fd 100644 --- a/development/README.md +++ b/development/README.md @@ -173,7 +173,7 @@ You can now login with user `Administrator` and the password you choose when cre You can launch a simple interactive shell console in the terminal with: ```shell -ench --site mysite.localhost console +bench --site mysite.localhost console ``` More likely, you may want to launch VSCode interactive console based on Jupyter kernel.