Назад | Перейти на главную страницу

Дополнительный шаг установки npm в эластичном бобовом стебле

Я мучительно перехожу с Heroku на Beanstalk. Мой package.json выглядит так:

  "scripts": {
    "start": "SERVE_BUILT=true NODE_ENV=production node server/upgrade.js; SERVE_BUILT=true NODE_ENV=production node server/www",
    "start:dev": "node server/www",
    "start:dev:debug": "node --inspect-brk server/www ",
    "start:dev:built": "SERVE_BUILT=true node server/www",
    "build": "rollup -c rollup.config.js",
    "postinstall": "cd server; npm install",
    "serve": "node server/upgrade.js; SERVE_BUILT=true NODE_ENV=production node server/www"
  },

Elastic Beastalk запустится автоматически npm install, но для меня этого недостаточно, поскольку node_modules основного каталога включает только клиентскую часть истории.

Мне также нужно бежать npm run build только один раз за развертывание. Мне ТАКЖЕ нужно бежать cd server; npm install после каждого развертывания для установки серверных пакетов.

У меня при этом возникают всевозможные проблемы, поскольку Amazon Beanstalk, похоже, игнорирует все, кроме prestart, start, poststart. Я попытался:

Есть ли какая-то передовая практика, чтобы сделать это правильно?