Google App Engine Стандартный узел JS, как запустить скрипт сборки? - PullRequest
0 голосов
/ 02 июля 2018

Поддерживает ли стандарт GAE для Node способ создания сценариев сборки? Я попытался использовать postinstall в package.json, но это не сработало.

Моя кодовая база имеет подкаталоги с package.json в подкаталогах. В моем корне package.json есть

scripts: { 
    postinstall: cd vendor && npm install 
    ....
}

Однако я не вижу установленных пакетов поставщиков, поэтому я склонен полагать, что постинсталляция не запускается по стандарту GAE Node.

Могу ли я установить зависимости подкаталогов без необходимости копировать и вставлять все мои vendor/package.json зависимости в корень?

Примечание: я также пытался поместить "install" в сценарии package.json, но, похоже, это тоже не сработало.

Ответы [ 3 ]

0 голосов
/ 05 ноября 2018

Чтобы добавить шаг сборки, выполните следующее:

gcloud beta app gen-config --custom

Это сгенерирует используемый по умолчанию dockerfile и config. В вашем .dockerfile добавьте шаг сборки:

RUN npm run build --unsafe-perm || \
  ((if [ -f npm-debug.log ]; then \
      cat npm-debug.log; \
    fi) && false)
0 голосов
/ 17 марта 2019

"prestart": "if [! -D build]; затем npm run build; fi",

"-d build" - это папка, сгенерированная процессом сборки, замените ее на то, что вы фактически используете.

0 голосов
/ 03 июля 2018

В стандарте GAE установка зависимостей осуществляется автоматически. Вы должны добавить их в свой package.json.

Как Документация Google упомянуто:

При развертывании приложения среда выполнения Node.js автоматически устанавливает все зависимости, объявленные в файле package.json, с помощью команды установки npm.

{
  "dependencies": {
    "lodash": "^4.0.1"
  }
}

Установка будет производиться во время развертывания приложения через:

gcloud app deploy
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...