Я пытаюсь развернуть приложение nodeJS на AWS CodeDeploy, и у меня возникла проблема с зависимостями gulp и запуском установки/запуска npm из файла bash.
У меня стандартная структура папок приложения с package.json в корне проекта и т. д.
Bash-файл (bin/npm_install.sh)
cd /opt/deployments/app-backend
npm install
Определения скриптов NPM
"scripts": {
"postinstall": "gulp minify-sdk && gulp setup-auto",
"start": "gulp",
"test": "gulp test"
}
Ошибка при запуске bin/npm_install.sh
[stdout]
[stdout]> [email protected] start /opt/deployments/app-backend
[stdout]> gulp
[stdout]
[stderr]
[stderr]module.js:340
[stderr] throw err;
[stderr] ^
[stderr]Error: Cannot find module 'pretty-hrtime'
[stderr] at Function.Module._resolveFilename (module.js:338:15)
[stderr] at Function.Module._load (module.js:280:25)
[stderr] at Module.require (module.js:364:17)
[stderr] at require (module.js:380:17)
[stderr] at Object.<anonymous> (/opt/deployments/app-backend/node_modules/.bin/gulp:5:18)
[stderr] at Module._compile (module.js:456:26)
[stderr] at Object.Module._extensions..js (module.js:474:10)
[stderr] at Module.load (module.js:356:32)
[stderr] at Function.Module._load (module.js:312:12)
[stderr] at Function.Module.runMain (module.js:497:10)
[stderr]npm ERR! weird error 8
[stderr]npm WARN This failure might be due to the use of legacy binary "node"
[stderr]npm WARN For further explanations, please read
[stderr]/usr/share/doc/nodejs/README.Debian
[stderr]
[stderr]npm ERR! not ok code 0
ПРИМЕЧАНИЕ. Запуск npm install отлично работает из корневой папки проекта.
Какие-либо предложения? Это лучший способ запустить приложение после того, как codedeploy завершит развертывание кода?