簡體   English   中英

人們將capistrano deploy.rb和食譜提交給他們的私人scm嗎?

[英]Do people commit their capistrano deploy.rb and recipes to their private scm?

對於這個相當愚蠢的問題感到抱歉,但人們會將他們的Capistrano文件(Capfile,deploy.rb,multisite> config / deploy / *)提交給他們的私人scm回購?

是否有人們遵循的最佳做法或標准? 你關注什么?

謝謝。

最佳做法是“是”,提交您的deploy.rb,但不提交任何包含密碼,api_keys或其他私有數據的文件 - 而是生成這些文件模板,例如在database.yml提交帶有數據庫名稱的文件,端口,用戶名,但類似的東西

password: <db_password>

創建模板文件。

顯然,如果您的項目是像GitHub這樣的公共回購,那么它是正確的。 但是,如果您的SCM是私有的,正如您所說,您應該將其視為任何其他安全資源。 密碼和密鑰不僅僅是“任何其他安全資源” - 它們應該是高度安全的。

對於完全自我配置的系統,創建capistrano(或者rake)任務,讀取具有各種密碼或密鑰的精心控制的本地文件(可能是YAML),並且一旦部署了已提交的文件,就將密碼寫入模板。

如果密碼或配置文件的格式變化不大,您可以使用cap:setup任務,然后手動添加密碼,將它們保留在app / shared / config目錄中,並讓capistrano在源樹中創建一個符號鏈接部署。

在部署方面,這只是一個高權限用戶應該執行的操作(特別是對於生產)。 通過此操作,您可以使密碼和其他敏感數據僅對已​​被授予對給定服務器的訪問權限的用戶可見。

Ryan Bates在這樣的策略上做了一些很好的RailsCasts,查看其中的一些劇集 請注意,許多RailsCasts不再免費,但每月9美元,這非常值得!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM