shared_children在Capistrano 3工作

我在deploy.rb有以下deploy.rb

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

这似乎是允许我共享公共目录的建议方法。

public/pictures目录存在,并在存储库中以空方式检查。 我试图在存储库中也没有它,但它无论如何都没有用。

当我使用capistrano进行部署时,我看不到public/pictures目录出现在我的部署位置的任何位置。

此function是否已从Capistrano 3中删除? Capistrano 3是否有明确的文档来源? 我能找到的全部是Capistrano 2文档和v3非常稀缺的信息来源。

这似乎是从Capistrano 2到3的无证变更。在新版本中,名称似乎是:linked_dirs

我更新了我的代码:

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

我还借此机会使用new :linked_filesfunction,该function允许您将shared目录中找到的文件直接链接到current应用程序,而无需为其编写自定义任务。

这两个变量最初看起来都是nil ,因此您不必获取当前值以将自己的目录附加到它们。