Функция запуска vscode в lerna monorepo

Во-первых, у меня есть monorepo, который структурирован так:

repo-name/
    packages/
        backend/
        frontend/
    .vscode/

Бэкэнд представляет собой приложение-функцию Azure, структурированное так:

backend/
    functions/
        funcOne/
        funcTwo/
    scripts/
        start-debug.sh
    package.json

Во-вторых, для backend"s package.jsonУ меня есть скрипт:

  "debug": "npm run build && FUNCTION_APP_PORT=7071 ./scripts/start-debug.sh",

start-debug.sh Сценарий выглядит так:

#!/bin/bash 
set -e
cd ./functions 
func extensions install 
func host start -p $FUNCTION_APP_PORT --debug VSCode

Я пытаюсь написать конфигурацию запуска, чтобы я мог отлаживать свои функции в VSCode.

Я попробовал несколько вариантов, основанных на том, что я там нашел, но, похоже, ничего не работает. У кого-нибудь есть предложения?

Вот моя последняя попытка:

{
    "name": "Launch Backend Functions",
    "type": "node",
    "request": "launch",
    "address": "localhost",
    "protocol": "inspector",
    "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/lerna",
    "runtimeArgs": [
        "exec",
        "--scope",
        "actual-name-of-backend-package",
        "--",
        "npm"
    ],
    "args": ["run", "debug"],
    "port": 1234
}

1 ответ

Решение

Хорошо, вот конфигурация запуска в VS Code, которая работала для меня:

{
  "type": "node",
  "request": "attach",
  "name": "Attach by Process ID",
  "protocol": "legacy",
  "processId": "${command:PickProcess}",
  "port": 9229
},

Мои шаги

1) Перейти к моему backend репо и запустить npm run debug который управляет моим start-debug.sh скрипт.

2) В VS Code я прикрепляю к nodejsWorker снаружи azure-function-core-tools,

Теперь я могу выполнять свои функции.

Другие вопросы по тегам