是否可以将Capistrano 3配置为使用内置linked_files
基于角色链接不同的文件?
我的服务器角色为worker
,不需要链接与网页相关的文件(即sitemap.xml
文件)。
答案 0 :(得分:2)
简短回答:不,Capistrano中的变量(例如:linked_files
)是全局的,并且每个主机/角色不能有不同的值。
您可以通过使用自己的自定义实现重新定义deploy:symlink:linked_files
和deploy:check:linked_files
任务来使其工作。例如,该实现可以为不同的角色执行不同的链接。
Rake::Task["deploy:symlink:linked_files"].clear_actions
task "deploy:symlink:linked_files" do
on release_roles(:web) do
execute :ln, "-s", ...
execute :ln, "-s", ...
# etc.
end
on release_roles(:app) do
execute :ln, "-s", ...
execute :ln, "-s", ...
# etc.
end
end
但是,我建议不要这样做有两个原因:
:linked_files
答案 1 :(得分:0)
no_release: true
将跳过链接文件。对于我来说,web
角色就足够了,因为我们仅在此处上传维护页面。