.devcontainer/devcontainer.json

Summary

Maintainability
Test Coverage
// 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.233.0/containers/python-3-postgres
// Update the VARIANT arg in docker-compose.yml to pick a Python version
{
    "name": "Rasa Open Source",
    "dockerComposeFile": "docker-compose.yml",
    "service": "app",
    "workspaceFolder": "/workspaces/rasa",
    // Set *default* container specific settings.json values on container create.
    "settings": {
        "python.defaultInterpreterPath": "/usr/local/bin/python",
        "python.linting.enabled": true,
        "python.linting.pylintEnabled": 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.ruffPath": "/usr/local/py-utils/bin/ruff",
        "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",
        "python.testing.pytestPath": "/usr/local/py-utils/bin/pytest"
    },
    // Add the IDs of extensions you want installed when the container is created.
    "extensions": [
        "ms-python.python",
        "ms-python.vscode-pylance"
    ],
    // memory is required for frontend build...fails for machines with less than 10g
    // "hostRequirements": {
    //    "memory": "12gb"
    // },
    // Use 'forwardPorts' to make a list of ports inside the container available locally.
    // This can be used to network with other containers or the host.
    "forwardPorts": [
        5005
    ],
    // Use 'postCreateCommand' to run commands after the container is created.
    "updateContentCommand": "make install && make install-docs && cd / && mkdir example && rasa init --no-prompt --init-dir example",
    // Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root.
    //"remoteUser": "vscode",
    "features": {
        "docker-in-docker": "20.10",
        "docker-from-docker": "20.10",
        "git": "os-provided",
        "github-cli": "latest",
        "sshd": "latest"
    }
}