Как я могу перейти в папку и запустить npm start с помощью git hook post-receive? - PullRequest
1 голос
/ 28 марта 2019

В основном я хочу:

git --work-tree=/home/aero/server --git-dir=/home/aero/server/.git pull;
ps aux | grep node | grep server-aero-static | awk '{print $2}' | xargs kill -9;
cd /home/aero/server;
npm start;

Я не думаю, что это будет работать в пост-получении, почему?И как мне заставить его работать?

1 Ответ

0 голосов
/ 28 марта 2019

Часть Git должна работать при условии, что удаленный «источник» правильно установлен в /home/aero/server, чтобы репо работало правильно (как в « Git post-receive не работает правильно »).

Часть npm start может быть проблемой, если эта команда блокируется.
В этом случае (имеется в виду выполнение в ловушке Git), вы можете рассмотреть , используя pm2 для запуска приложения, как описано в « Дружественное руководство по автоматизации развертывания приложений Node.js с помощью Git Hooks » от aunnnn .

pm2 start npm --name 'my-app' — start \
&& echo "post-receive: app started successfully with pm2".
...