diff --git a/lib/capistrano/tasks/unicorn.cap b/lib/capistrano/tasks/unicorn.cap index 1b8fc56f8..16efa4576 100644 --- a/lib/capistrano/tasks/unicorn.cap +++ b/lib/capistrano/tasks/unicorn.cap @@ -5,7 +5,16 @@ namespace :unicorn do execute "[[ -n $(pgrep -f unicorn) ]] && pgrep -f unicorn | xargs kill -SIGTERM" end end + + desc "Kills unicorn processes (blocks until complete)" + task :kill do + on roles(:app) do + execute "[[ -n $(pgrep -f unicorn) ]] && pgrep -f unicorn | xargs kill -SIGKILL" + end + end end +after "deploy:published", "unicorn:stop" after "deploy:published", "unicorn:terminate" +after "deploy:published", "unicorn:kill" after "deploy:published", "unicorn:start"