.devcontainer/devcontainer.json
{
"dockerComposeFile": "docker-compose.yml",
"service": "devcontainer",
"workspaceFolder": "/workspace",
"customizations": {
"vscode": {
"extensions": [
"ms-python.python",
"charliermarsh.ruff",
"batisteo.vscode-django",
"ms-vscode.vscode-typescript-next",
"ms-python.vscode-pylance"
],
"settings": {
"[python]": {
"editor.formatOnSave": true,
"editor.defaultFormatter": "charliermarsh.ruff",
"editor.codeActionsOnSave": {
"source.fixAll": "always",
"source.organizeImports": "always"
}
},
"python.testing.unittestEnabled": false,
"python.testing.pytestEnabled": true,
"python.testing.pytestArgs": ["tests"],
"ruff.enable": true,
"ruff.lint.args": ["--config=${workspaceFolder}/pyproject.toml", "--fix"],
"ruff.format.args": ["--config=${workspaceFolder}/pyproject.toml", "--preview"],
"python.defaultInterpreterPath": "{workspaceFolder}/.venv/bin/python"
}
}
},
"postCreateCommand": "./tools/install.sh --python python3.11 && ./tools/migrate.sh && ./tools/loadtestdata.sh",
"postStartCommand": "git config --global --add safe.directory ${containerWorkspaceFolder}",
"remoteEnv": {
"DJANGO_SETTINGS_MODULE": "integreat_cms.core.settings",
"INTEGREAT_CMS_DEBUG": "1",
"INTEGREAT_CMS_DEEPL_AUTH_KEY": "dummy",
"INTEGREAT_CMS_FCM_KEY": "dummy",
"INTEGREAT_CMS_SECRET_KEY": "dummy",
"INTEGREAT_CMS_BACKGROUND_TASKS_ENABLED": "0",
"INTEGREAT_CMS_SUMM_AI_API_KEY": "dummy",
"INTEGREAT_CMS_LINKCHECK_DISABLE_LISTENERS": "1"
}
}