mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
7793b3505d
* Fix various devcontainer issues - fix dubious git ownership during postCreateCommand - fix gpg signing in container - fix local gitconfig in container - add gitlens extension to devcontainer - enable plugins in devcontainer * fix: spelling mistake
91 lines
3.4 KiB
JSON
91 lines
3.4 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/*"
|
|
}
|
|
},
|
|
|
|
// 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": "/workspaces/InvenTree/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",
|
|
|
|
// 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": "/workspaces/InvenTree/dev/database.sqlite3",
|
|
"INVENTREE_MEDIA_ROOT": "/workspaces/InvenTree/dev/media",
|
|
"INVENTREE_STATIC_ROOT": "/workspaces/InvenTree/dev/static",
|
|
"INVENTREE_BACKUP_DIR": "/workspaces/InvenTree/dev/backup",
|
|
"INVENTREE_CONFIG_FILE": "/workspaces/InvenTree/dev/config.yaml",
|
|
"INVENTREE_SECRET_KEY_FILE": "/workspaces/InvenTree/dev/secret_key.txt",
|
|
"INVENTREE_PLUGINS_ENABLED": "True",
|
|
"INVENTREE_PLUGIN_DIR": "/workspaces/InvenTree/dev/plugins",
|
|
"INVENTREE_PLUGIN_FILE": "/workspaces/InvenTree/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": "/workspaces/InvenTree/dev/venv",
|
|
"PATH": "/workspaces/InvenTree/dev/venv/bin:${containerEnv:PATH}"
|
|
}
|
|
}
|