0

我有一个应用服务器和另一个弹性搜索。

我设置了一个搜索角色如下:

role :search, 'search.server.com', :no_release => true

我有 3 个不同的阶段 - 产品、阶段、实验

我希望所有命令都在应用服务器上运行,除了弹性搜索服务器上的一对。

看来我必须添加:except => { :no_release => true }所有任务才能获得此功能。

有替代方案吗?

4

1 回答 1

1

您可以设置多个角色并在需要的角色上指定 no_release。只能为指定的角色运行任务,例如:

role :search, "ex.com", :no_release => true
role :app, "ex.com"

task :run_for_both, :roles => [:app, :search] do
  run "echo 'my command'"
end

task :run_on_app, :roles => :app, :search do
  run "echo 'my command on app role'"
end
于 2012-11-10T10:18:07.953 回答