66 lines
1.9 KiB
JSON
66 lines
1.9 KiB
JSON
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
|
{
|
|
"name": "Python Development DevContainer (Generic)",
|
|
|
|
"image": "mcr.microsoft.com/devcontainers/python:1-3.10",
|
|
"features": {
|
|
"ghcr.io/devcontainers/features/docker-in-docker": {},
|
|
"ghcr.io/devcontainers/features/python:1": {
|
|
"installGradle": true,
|
|
"version": "3.10",
|
|
"installTools": true
|
|
},
|
|
"ghcr.io/devcontainers-extra/features/poetry:2": {}
|
|
},
|
|
|
|
// Deterministic order reduces cache busting
|
|
"overrideFeatureInstallOrder": [
|
|
"ghcr.io/devcontainers/features/docker-in-docker",
|
|
"ghcr.io/devcontainers/features/python",
|
|
"ghcr.io/devcontainers-extra/features/poetry"
|
|
],
|
|
|
|
// Configure tool-specific properties.
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions": [
|
|
// Python extensions:
|
|
"charliermarsh.ruff",
|
|
"matangover.mypy",
|
|
"ms-python.python",
|
|
"ms-python.vscode-pylance",
|
|
|
|
// Toml support
|
|
"tamasfe.even-better-toml",
|
|
|
|
// Yaml and JSON Schema support:
|
|
"redhat.vscode-yaml",
|
|
|
|
// Contributing:
|
|
"GitHub.vscode-pull-request-github"
|
|
],
|
|
"settings": {
|
|
"extensions.ignoreRecommendations": true,
|
|
"git.openRepositoryInParentFolders": "always"
|
|
}
|
|
}
|
|
},
|
|
|
|
// Mark the root directory as 'safe' for git.
|
|
"initializeCommand": "git config --add safe.directory /workspaces/airbyte",
|
|
|
|
// Setup airbyte-ci on the container:
|
|
"postCreateCommand": "make tools.airbyte-ci-dev.install",
|
|
|
|
"containerEnv": {
|
|
// Deterministic Poetry virtual env location: `./.venv`
|
|
"POETRY_VIRTUALENVS_IN_PROJECT": "true"
|
|
}
|
|
|
|
// Override to change the directory that the IDE opens by default:
|
|
// "workspaceFolder": "/workspaces/airbyte"
|
|
|
|
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
|
// "remoteUser": "root"
|
|
}
|