我有一个应用服务器和另一个弹性搜索。
我设置了一个搜索角色如下:
role :search, 'search.server.com', :no_release => true
我有 3 个不同的阶段 - 产品、阶段、实验
我希望所有命令都在应用服务器上运行,除了弹性搜索服务器上的一对。
看来我必须添加:except => { :no_release => true }
所有任务才能获得此功能。
有替代方案吗?
我有一个应用服务器和另一个弹性搜索。
我设置了一个搜索角色如下:
role :search, 'search.server.com', :no_release => true
我有 3 个不同的阶段 - 产品、阶段、实验
我希望所有命令都在应用服务器上运行,除了弹性搜索服务器上的一对。
看来我必须添加:except => { :no_release => true }
所有任务才能获得此功能。
有替代方案吗?
您可以设置多个角色并在需要的角色上指定 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