24
例如在:什麼:除了=> {:no_release =>真}意味着Capistrano的DSL
task :restart, :roles => :app, :except => { :no_release => true } do
end
例如在:什麼:除了=> {:no_release =>真}意味着Capistrano的DSL
task :restart, :roles => :app, :except => { :no_release => true } do
end
望着handbook,似乎可以在:no_release
屬性傳遞給role
定義(通常爲網絡角色完成)。這表明該代碼不應該在該角色的服務器上檢出。
所以,我猜測,當一個任務指定:except => { :no_release => true }
- 它說「跳過這個任務的服務器(角色)有:no_release
定義爲true
」。
role :app, "your app-server here"
role :web, "your web-server here", :no_release => true
role :db, "your db-server here", :primary => true
...
desc "restart passenger"
task :restart, :except => { :no_release => true } do
run "touch #{current_path}/tmp/restart.txt"
end
在上面的例子中,重新啓動操作不應該在Web服務器上運行。再次,這沒有經過測試......只是通過我的觀察。