小编Tim*_*ane的帖子

如何为Capistrano中的不同角色定义相同的任务?

我正在使用Capistrano来处理我的部署,我在我的设置中有两个不同的角色 - 网络和:处理.它们都具有通常的:部署任务,但是:对于两种类型的服务器,:restart任务需要不同.

所以我的第一次尝试是这样的:

task :restart, :roles => :web do
    run "... web related restart stuff ..."
end

task :restart, :roles => :processing do
    run "... processing related restart stuff ..."
end
Run Code Online (Sandbox Code Playgroud)

哪个不起作用,因为第二个:restart(for:处理角色)替换第一个:restart(对于:web角色),而:web:restart永远不会发生.

我快速浏览了一下,看看我是否可以编写条件代码,具体取决于运行任务时服务器可能处于哪个角色(或角色)但是旁边没有任何文档用于此类事情.有任何想法吗?

ruby capistrano

10
推荐指数
1
解决办法
1939
查看次数

标签 统计

capistrano ×1

ruby ×1