多的Git倉庫密碼我都在GitHub上和我的私人亞馬遜實例,並用獨特的提交我同時更新一個Git倉庫。隱藏DB與在Rails應用程序
有一種方法將文件提交database.yml
只到我的私人資料庫,而不是在GitHub上?
如果能幫上忙,我使用Capistrano的部署。
多的Git倉庫密碼我都在GitHub上和我的私人亞馬遜實例,並用獨特的提交我同時更新一個Git倉庫。隱藏DB與在Rails應用程序
有一種方法將文件提交database.yml
只到我的私人資料庫,而不是在GitHub上?
如果能幫上忙,我使用Capistrano的部署。
在過去的日子裏,我發現沒有回答這個問題,但後來我解決我的問題,所以我會說什麼,我對我所做的事情有工作。
因爲我不需要修改文件database.yml
,所以我解決了我的問題,手動將其複製到我的Amazon實例並將其添加到.gitignore
。
然後,我在deploy.rb
添加任務鏈接database.yml
部署
# copy db config
after "deploy:update_code", :copy_db_config
desc "copy db config file"
task :copy_db_config do
run "ln -s ~/path/where/I/copied/database.yml #{release_path}/config/database.yml"
end
希望這有助於當前目錄。
另一種解決方案,提供here。如果您先前定義了環境變量,則可以在databases.yml
文件中使用它們。
username: <%= ENV['POSTGRES_USERNAME'] %>
password: <%= ENV['POSTGRES_PASSWORD'] %>
這也是我一直在做:http://www.tigraine.at/2011/09/25/securely-managing-database-yml-when-deploying-with-capistrano/ – Tigraine
@Tigraine大:)不幸的是我過去幾天沒有看到你的帖子..我可以節省很多時間 –