У меня есть существующее приложение nodejs, построенное на машинописном тексте.
Существующая структура приложения nodejs выглядит следующим образом
ROOT
- dist
- src
- *.ts
- test
- package.json
- gulpfile.json
- .env
Вся компиляция идет под dist, и приложение работает нормально.
Я уже использую функции firebase для многих задач и хотел бы использовать их и для этого приложения.
Сейчас я пытаюсь напрямую интегрировать функции firebase внутри этого проекта. Пересмотренная структура
ROOT
- dist
- src
- *.ts
- workers <firebase functions>
- index.ts
- test
- package.json
- gulpfile.json
- .env
- firebase.json
- .firebaserc
Чтобы firebase смотрела на правильную папку, я настроил папку в firebase.json так, чтобы она указывала на корневой каталог.
{
"functions": {
"source": "."
}
}
Помимо этого, я внес необходимые изменения в package.json.
{
...
"main": "dist/workers/index.js",
"engines": {
"node": "10"
},
...
Эти конфигурации гарантируют, что я могу запускать функции в облачной оболочке.
firebase functions:shell --debug
Проблема заключается в развертывании функции.
firebase deploy --only functions --debug
Развертывание firebase пытается развернуть весь мой каталог, вызывая ошибку 400. Журнал отладки ясно показывает, что размер пакета превышает 300 МБ, по сути упаковывая все ненужные файлы.
Как я могу гарантировать, что развертывание firebase развертывает только необходимые папки.