{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "chrome",
            "request": "launch",
            "preLaunchTask": "ui.js: server",
            "name": "ui.js: debug",
            "url": "http://localhost:3000",
            "webRoot": "${workspaceFolder}/cvat-ui",
            "sourceMaps": true,
            "sourceMapPathOverrides": {
                "webpack://cvat/./*": "${workspaceFolder}/cvat-core/*",
                "webpack:///./*": "${webRoot}/*",
                "webpack:///src/*": "${webRoot}/*",
                "webpack:///*": "*",
                "webpack:///./~/*": "${webRoot}/node_modules/*"
            },
            "smartStep": true,
        },
        {
            "type": "node",
            "request": "launch",
            "name": "ui.js: test",
            "cwd": "${workspaceRoot}/tests",
            "runtimeExecutable": "${workspaceRoot}/tests/node_modules/.bin/cypress",
            "args": [
                "run",
                "--headless",
                "--browser",
                "chrome"
            ],
            "outputCapture": "std",
            "console": "internalConsole"
        },
        {
            "name": "server: django",
            "type": "python",
            "request": "launch",
            "stopOnEntry": false,
            "justMyCode": false,
            "pythonPath": "${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "runserver",
                "--noreload",
                "--insecure",
                "127.0.0.1:7000"
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "console": "internalConsole"
        },
        {
            "name": "server: chrome",
            "type": "chrome",
            "request": "launch",
            "url": "http://localhost:7000/",
            "disableNetworkCache":true,
            "trace": true,
            "showAsyncStacks": true,
            "pathMapping":{
                "/static/engine/": "${workspaceFolder}/cvat/apps/engine/static/engine/",
                "/static/dashboard/": "${workspaceFolder}/cvat/apps/dashboard/static/dashboard/",
            }
        },
        {
            "name": "server: RQ - default",
            "type": "python",
            "request": "launch",
            "stopOnEntry": false,
            "justMyCode": false,
            "pythonPath": "${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "rqworker",
                "default",
                "--worker-class",
                "cvat.simpleworker.SimpleWorker",
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "env": {},
            "console": "internalConsole"
        },
        {
            "name": "server: RQ - scheduler",
            "type": "python",
            "request": "launch",
            "stopOnEntry": false,
            "justMyCode": false,
            "pythonPath": "${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "rqscheduler",
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "env": {},
            "console": "internalConsole"
        },
        {
            "name": "server: RQ - low",
            "type": "python",
            "request": "launch",
            "justMyCode": false,
            "stopOnEntry": false,
            "pythonPath":"${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "rqworker",
                "low",
                "--worker-class",
                "cvat.simpleworker.SimpleWorker",
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "env": {},
            "console": "internalConsole"
        },
        {
            "name": "server: git",
            "type": "python",
            "request": "launch",
            "justMyCode": false,
            "stopOnEntry": false,
            "pythonPath": "${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "update_git_states"
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "env": {},
            "console": "internalConsole"
        },
        {
            "name": "server: migrate",
            "type": "python",
            "request": "launch",
            "justMyCode": false,
            "stopOnEntry": false,
            "pythonPath": "${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "migrate"
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "env": {},
            "console": "internalConsole"
        },
        {
            "name": "server: tests",
            "type": "python",
            "request": "launch",
            "justMyCode": false,
            "stopOnEntry": false,
            "pythonPath": "${command:python.interpreterPath}",
            "program": "${workspaceRoot}/manage.py",
            "args": [
                "test",
                "--settings",
                "cvat.settings.testing",
                "cvat/apps",
                "utils/cli"
            ],
            "django": true,
            "cwd": "${workspaceFolder}",
            "env": {},
            "console": "internalConsole"
        },
        {
            "name": "core.js: debug",
            "type": "node",
            "request": "launch",
            "cwd": "${workspaceFolder}/cvat-core",
            "runtimeExecutable": "node",
            "runtimeArgs": [
                "--nolazy",
                "--inspect-brk=9230",
                "src/api.js"
            ],
            "port": 9230
        },
        {
            "type": "node",
            "request": "launch",
            "name": "jest debug",
            "program": "${workspaceFolder}/cvat-core/node_modules/.bin/jest",
            "args": [
              "--config",
              "${workspaceFolder}/cvat-core/jest.config.js"
            ],
            "console": "integratedTerminal",
            "internalConsoleOptions": "neverOpen",
            "disableOptimisticBPs": true,
        }
    ],
    "compounds": [
        {
            "name": "server: debug",
            "configurations": [
                "server: chrome",
                "server: django",
                "server: RQ - default",
                "server: RQ - low",
                "server: RQ - scheduler",
                "server: git",
            ]
        }
    ]
}
