Git

Chef:如果 git deploy 拉取了新程式碼,如何執行操作?

  • December 18, 2012

大多數情況下,部署到本地目錄的 git 儲存庫中沒有任何新內容,但如果有任何更改,應重新啟動 node.js 應用程序以開始使用最新更改。如果沒有提取新程式碼,則不應觸摸它。

如何通過廚師實現這一目標?

如果修訂版本發生變化,gitsync操作實際上會觸發通知。所以添加一個只在通知時執行的執行塊,你就完成了!

git "/home/code" do
   ...
   action :sync
   notifies :run, "execute[restart-node-app]", :immediately
end

execute "restart-node-app" do
   command "..."
   action :nothing
end

引用自:https://serverfault.com/questions/458983