#azure #deployment #azure-functions #github-actions #azure-static-web-app
#azure #развертывание #azure-функции #github-действия #azure-static-web-app
Вопрос:
Я работаю над API, который использует функции Azure, которые развертываются в статическом веб-приложении Azure с помощью https://github.com/Azure/static-web-apps-deploy . Я хочу реструктурировать свою часть api, чтобы отделить исходные файлы от файлов сборки, но мои функции развертываются неправильно.
В настоящее время сторона API имеет следующую структуру каталогов:
/api/node_modules
/api/dist
/api/coverage
/api/* (a mix of src and config json files)
Я пытаюсь создать папку / api / src и переместить в нее все функции Azure, чтобы в папке api теперь было только:
/api/node_modules
/api/dist
/api/coverage
/api/src (contains azure functions)
/api/*.json (config json files only - e.g. package.json, typedoc.json, .eslintrc.json, etc)
Как только я добавил папку src, функции больше не развертывались правильно. Веб-приложение будет 404 пытаться найти маршруты.
Вот что я пробовал до сих пор:
- Обновление функции.json scriptFile для указания на сценарий с помощью /src/MyFunction/index.js
- Обновление tsconfig include для включения файлов src
- Обновление действия github для указания на api / src вместо просто api
- Убедитесь, что файл host.json находится в каталоге src
Пример репозитория концепции можно найти по адресу https://github.com/sinedied/azure-swag . Для моего репозитория у меня есть больше функций Azure, но это та же концепция. Я бы попытался переместить функцию цитирования в папку src, а затем развернуть функции.
Любая помощь приветствуется!
Редактировать: после попытки воспроизвести проблему я не смог воспроизвести ее в репозитории azure-swag, просто переместив функции. Я полагаю, что это может быть связано с тем, что мой репозиторий находится в typescript. Я смог воспроизвести репозиторий в следующем репозитории: https://github.com/avenmia/test-deployment
Функции Azure в настоящее время 503 при запросе, но когда я добавляю файл сценария и указываю на index.js что касается функции, то она дает мне 404 для моего первоначального проекта.
Ответ №1:
Приведенные ниже основные настройки позволяют мне работать нормально:
У меня та же структура, что и у вашего статического веб-приложения. Кажется, с моей стороны проблем нет.
Пожалуйста, убедитесь, что у вас есть полная структура api/src
.
Структура приложения функций:
Комментарии:
1. Я добавил правку после попытки воспроизвести проблему с репозиторием azure-swag. Я смог воспроизвести проблему, которую я вижу в репозитории avenmia, если вы можете взглянуть. Я также смог заставить это работать