2014-01-13 47 views
6

工作在我deploy.rb我有以下幾點:shared_children不Capistrano的3

set :upload_dirs, %w(public/pictures) 
set :shared_children, (fetch(:shared_children) || []) + fetch(:upload_dirs) 

這似乎是建議的方法,讓我有公共目錄共享。

public/pictures目錄存在,並在存儲庫中檢入爲空。我試圖也沒有在存儲庫中,但它無法正常工作。

當我部署capistrano時,我看不到public/pictures目錄出現在我的部署位置的任何位置。

此功能已從Capistrano 3中刪除? Capistrano 3有沒有確定的文件來源?我所能找到的只有Capistrano 2文檔和v3的非常稀缺的信息來源。

回答

18

這似乎是從Capistrano 2到3的無證更改。在新版本中,名稱似乎是:linked_dirs

我更新了我的代碼,例如:

set :linked_files, %w(config/database.yml config/application.yml) 
set :linked_dirs, %w(public/pictures) 

我也趁機利用:linked_files的新功能,它允許您直接在shared目錄中找到的文件鏈接到您的current應用程序,而無需編寫的機會自定義任務。

兩個變量起初似乎都是nil,所以您不必獲取當前值以將自己的目錄附加到它們。