shared_children在Capistrano 3工作

Gab*_*lli 6 deployment capistrano ruby-on-rails

我有以下内容deploy.rb:

set :upload_dirs, %w(public/pictures)
set :shared_children, (fetch(:shared_children) || []) + fetch(:upload_dirs)
Run Code Online (Sandbox Code Playgroud)

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

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

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

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

Gab*_*lli 19

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

我更新了我的代码:

set :linked_files, %w(config/database.yml config/application.yml)
set :linked_dirs, %w(public/pictures)
Run Code Online (Sandbox Code Playgroud)

我还借此机会使用新:linked_files功能,它允许您将目录中找到的shared文件直接链接到您的current应用程序,而无需为其编写自定义任务.

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