В большинстве случаев в репозитории git, развернутом в локальном каталоге, нет ничего нового, но если есть какие-либо изменения, необходимо перезапустить приложение node.js, чтобы начать работу с последними изменениями. Его нельзя трогать, если новый код не извлекался.
Как добиться этого с поваром?
Мерзавец sync
действие фактически запускает уведомления, если ревизия была изменена. Так что добавьте блок выполнения, который запускается только при уведомлении, и все готово!
git "/home/code" do
...
action :sync
notifies :run, "execute[restart-node-app]", :immediately
end
execute "restart-node-app" do
command "..."
action :nothing
end