Функция запуска 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
,
Теперь я могу выполнять свои функции.