mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
17057f4266
* Added empty problemMatchers to prevent vscode from asking * Added first draft for devcontainer docs * Add 3rd space to tips * Fix wording * Add 4rd space to tips * Refphased intro text * Fixed spelling mistakes and added note * Added dynamic variables for devcontainer * Added missing containerWorkspaceFolder vars other devcontainer files Co-authored-by: Oliver <oliver.henry.walters@gmail.com> * Added note for inventree core intelicense for plugin devs * Added where is dev data stored question to faq * Update docs/docs/start/devcontainer.md * update toc --------- Co-authored-by: Oliver <oliver.henry.walters@gmail.com> Co-authored-by: Matthias Mair <code@mjmair.com>
92 lines
3.6 KiB
JSON
92 lines
3.6 KiB
JSON
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
|
|
// https://github.com/microsoft/vscode-dev-containers/tree/v0.241.1/containers/python-3
|
|
{
|
|
"name": "InvenTree",
|
|
"build": {
|
|
"dockerfile": "Dockerfile",
|
|
"context": "..",
|
|
"args": {
|
|
// Update 'VARIANT' to pick a Python version: 3, 3.10, 3.9, 3.8, 3.7, 3.6
|
|
// Append -bullseye or -buster to pin to an OS version.
|
|
// Use -bullseye variants on local on arm64/Apple Silicon.
|
|
"VARIANT": "3.10-bullseye",
|
|
// Options
|
|
"NODE_VERSION": "lts/*",
|
|
"WORKSPACE": "${containerWorkspaceFolder}"
|
|
}
|
|
},
|
|
|
|
// Configure tool-specific properties.
|
|
"customizations": {
|
|
// Configure properties specific to VS Code.
|
|
"vscode": {
|
|
// Set *default* container specific settings.json values on container create.
|
|
"settings": {
|
|
"python.defaultInterpreterPath": "${containerWorkspaceFolder}/dev/venv/bin/python",
|
|
"python.linting.enabled": true,
|
|
"python.linting.pylintEnabled": false,
|
|
"python.linting.flake8Enabled": true,
|
|
"python.formatting.autopep8Path": "/usr/local/py-utils/bin/autopep8",
|
|
"python.formatting.blackPath": "/usr/local/py-utils/bin/black",
|
|
"python.formatting.yapfPath": "/usr/local/py-utils/bin/yapf",
|
|
"python.linting.banditPath": "/usr/local/py-utils/bin/bandit",
|
|
"python.linting.flake8Path": "/usr/local/py-utils/bin/flake8",
|
|
"python.linting.mypyPath": "/usr/local/py-utils/bin/mypy",
|
|
"python.linting.pycodestylePath": "/usr/local/py-utils/bin/pycodestyle",
|
|
"python.linting.pydocstylePath": "/usr/local/py-utils/bin/pydocstyle",
|
|
"python.linting.pylintPath": "/usr/local/py-utils/bin/pylint"
|
|
},
|
|
|
|
// Add the IDs of extensions you want installed when the container is created.
|
|
"extensions": [
|
|
"ms-python.python",
|
|
"ms-python.vscode-pylance",
|
|
"batisteo.vscode-django",
|
|
"eamodio.gitlens"
|
|
]
|
|
}
|
|
},
|
|
|
|
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
|
"forwardPorts": [8000],
|
|
"portsAttributes": {
|
|
"8000": {
|
|
"label": "InvenTree server"
|
|
}
|
|
},
|
|
|
|
// Use 'postCreateCommand' to run commands after the container is created.
|
|
"postCreateCommand": "./.devcontainer/postCreateCommand.sh ${containerWorkspaceFolder}",
|
|
|
|
// Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
|
|
"remoteUser": "vscode",
|
|
"features": {
|
|
"git": "os-provided",
|
|
"github-cli": "latest"
|
|
},
|
|
|
|
"remoteEnv": {
|
|
// InvenTree config
|
|
"INVENTREE_DEBUG": "True",
|
|
"INVENTREE_DEBUG_LEVEL": "INFO",
|
|
"INVENTREE_DB_ENGINE": "sqlite3",
|
|
"INVENTREE_DB_NAME": "${containerWorkspaceFolder}/dev/database.sqlite3",
|
|
"INVENTREE_MEDIA_ROOT": "${containerWorkspaceFolder}/dev/media",
|
|
"INVENTREE_STATIC_ROOT": "${containerWorkspaceFolder}/dev/static",
|
|
"INVENTREE_BACKUP_DIR": "${containerWorkspaceFolder}/dev/backup",
|
|
"INVENTREE_CONFIG_FILE": "${containerWorkspaceFolder}/dev/config.yaml",
|
|
"INVENTREE_SECRET_KEY_FILE": "${containerWorkspaceFolder}/dev/secret_key.txt",
|
|
"INVENTREE_PLUGINS_ENABLED": "True",
|
|
"INVENTREE_PLUGIN_DIR": "${containerWorkspaceFolder}/dev/plugins",
|
|
"INVENTREE_PLUGIN_FILE": "${containerWorkspaceFolder}/dev/plugins.txt",
|
|
|
|
// Python config
|
|
"PIP_USER": "no",
|
|
|
|
// used to load the venv into the PATH and activate it
|
|
// Ref: https://stackoverflow.com/a/56286534
|
|
"VIRTUAL_ENV": "${containerWorkspaceFolder}/dev/venv",
|
|
"PATH": "${containerWorkspaceFolder}/dev/venv/bin:${containerEnv:PATH}"
|
|
}
|
|
}
|