72 lines
2.3 KiB
JSON
72 lines
2.3 KiB
JSON
{
|
|
"name": "Home Assistant Dev",
|
|
"context": "..",
|
|
"dockerFile": "../Dockerfile.dev",
|
|
"postCreateCommand": "git config --global --add safe.directory ${containerWorkspaceFolder} && script/setup",
|
|
"postStartCommand": "script/bootstrap",
|
|
"containerEnv": {
|
|
"PYTHONASYNCIODEBUG": "1"
|
|
},
|
|
"features": {
|
|
"ghcr.io/devcontainers/features/github-cli:1": {}
|
|
},
|
|
// Port 5683 udp is used by Shelly integration
|
|
"appPort": ["8123:8123", "5683:5683/udp"],
|
|
"runArgs": [
|
|
"-e",
|
|
"GIT_EDITOR=code --wait",
|
|
"--security-opt",
|
|
"label=disable"
|
|
],
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions": [
|
|
"charliermarsh.ruff",
|
|
"ms-python.pylint",
|
|
"ms-python.vscode-pylance",
|
|
"visualstudioexptteam.vscodeintellicode",
|
|
"redhat.vscode-yaml",
|
|
"esbenp.prettier-vscode",
|
|
"GitHub.vscode-pull-request-github",
|
|
"GitHub.copilot"
|
|
],
|
|
// Please keep this file in sync with settings in home-assistant/.vscode/settings.default.json
|
|
"settings": {
|
|
"python.experiments.optOutFrom": ["pythonTestAdapter"],
|
|
"python.defaultInterpreterPath": "/home/vscode/.local/ha-venv/bin/python",
|
|
"python.pythonPath": "/home/vscode/.local/ha-venv/bin/python",
|
|
"python.terminal.activateEnvInCurrentTerminal": true,
|
|
"python.testing.pytestArgs": ["--no-cov"],
|
|
"pylint.importStrategy": "fromEnvironment",
|
|
"editor.formatOnPaste": false,
|
|
"editor.formatOnSave": true,
|
|
"editor.formatOnType": true,
|
|
"files.trimTrailingWhitespace": true,
|
|
"terminal.integrated.profiles.linux": {
|
|
"zsh": {
|
|
"path": "/usr/bin/zsh"
|
|
}
|
|
},
|
|
"terminal.integrated.defaultProfile.linux": "zsh",
|
|
"yaml.customTags": [
|
|
"!input scalar",
|
|
"!secret scalar",
|
|
"!include_dir_named scalar",
|
|
"!include_dir_list scalar",
|
|
"!include_dir_merge_list scalar",
|
|
"!include_dir_merge_named scalar"
|
|
],
|
|
"[python]": {
|
|
"editor.defaultFormatter": "charliermarsh.ruff"
|
|
},
|
|
"json.schemas": [
|
|
{
|
|
"fileMatch": ["homeassistant/components/*/manifest.json"],
|
|
"url": "${containerWorkspaceFolder}/script/json_schemas/manifest_schema.json"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|