多個開發人員如何管理單一廚師食譜?

多個開發人員如何管理單一廚師食譜?

我創建了一本食譜,並用於manage.chef.io託管和部署它。我已將食譜託管在 GitHub 私人儲存庫中。

考慮一個場景:
如果我對食譜做了一些更改knife cookbook upload,但我忘記推到Github。

我如何確保它不會發生?甚至不是錯的。我如何確保每個人都可以隨時獲得最新的儲存庫,否則就不能knife upload。就像git push如果您沒有git pull編輯更改就不能一樣。

我的同事從 GitHub 上拉取數據,但沒有看到任何變化。因此他做出了自己的改變knife cookbook upload。但他會替換我的更改,因為他有舊版本。

那麼在多個 DevOps 之間管理一本說明書的最佳實踐是什麼?

答案1

最簡單的方法通常是讓 Chef Server 的推播由 Jenkins 等 CI 服務控制。這迫使圍繞原始碼控制進行序列化,因為沒有人有權運行說明書上傳。您也可以確保充分溝通以避免這種情況,但這更容易出錯。一些圍繞策略文件的 Chef 工作流程根本不使用正常的說明書上傳,因此不會出現此問題。

相關內容