大多数情况下,git仓库没有新的部署到本地目录,但是如果有任何更改,应该重新启动node.js应用程序以开始使用最新的更改。 如果没有新的代码被拉出,不应该被触动。
如何与厨师做到这一点?
如果修改已经改变,那么git sync操作实际上会触发通知。 因此,添加一个只在通知中运行的执行块,就完成了!
git "/home/code" do ... action :sync notifies :run, "execute[restart-node-app]", :immediately end execute "restart-node-app" do command "..." action :nothing end