2013-03-25 95 views
1

我們正在使用capistrano來部署我們的rails應用程序,並且應用的開發/生產版本使用共享/包文件夾。有沒有辦法阻止創建共享/包並要求capistrano在不同階段使用單獨的寶石套裝?如何在部署期間避免共享包文件夾

回答

1

會設置一個bundle_dir爲你工作?

set :bundle_dir, "/my/bundle/path" 

我覺得它默認設置爲:

set :bundle_dir, File.join(fetch(:shared_path), 'bundle') 
+0

沒有它不會,我們有問題,因爲多個環境共享同捆。我寧願使用個別rvm gemsets也不知道如何使用capistrano來整合這個。 – Sam 2013-03-26 13:31:50

1

當你說的階段,你的意思,你必須在同一臺不同的環境,並使用斯特拉努/多級?

如果是這樣,給每個階段的應用程序一個不同的名稱將分隔共享目錄。

在部署/ development.rb

set :application, "myapp-dev" 

在部署/ production.rb

set :application, "myapp-prod" 
+0

是的,但是他們都使用相同的共享包,這是問題的根源。 – Sam 2013-03-26 13:29:41

+0

在開發和生產capistrano多級配置文件中設置不同的bundle_dir參數。 – 2013-03-26 20:49:00