move newrelic + deploytags gem to production env, rename cap tasks to .rake

This commit is contained in:
Albert Yi
2016-12-06 14:58:39 -08:00
parent 4eb0a64135
commit 9a75a05c25
7 changed files with 4 additions and 4 deletions

View File

@@ -0,0 +1,51 @@
namespace :delayed_job do
desc "Start delayed_job process"
task :start do
on roles(:app) do
if test("[ -d #{current_path} ]")
within current_path do
with rails_env: fetch(:rails_env) do
hostname = capture("hostname").strip
execute :bundle, "exec", "script/delayed_job", "--queues=default,#{hostname}", "-n 2", "start"
end
end
end
end
end
desc "Stop delayed_job process"
task :stop do
on roles(:app) do
if test("[ -d #{current_path} ]")
within current_path do
with rails_env: fetch(:rails_env) do
execute :bundle, "exec", "script/delayed_job", "stop"
end
end
end
end
end
desc "Restart delayed_job process"
task :restart do
on roles(:app) do
find_and_execute_task("delayed_job:stop")
find_and_execute_task("delayed_job:start")
end
end
desc "Kill delayed_job process"
task :kill do
on roles(:app) do
procs = capture("ps -A -o pid,command").split(/\r\n|\r|\n/).grep(/delayed_job/).map(&:to_i)
if procs.any?
execute "for i in #{procs.join(' ')} ; do kill -s TERM $i ; done"
end
end
end
end
after "delayed_job:stop", "delayed_job:kill"
before "deploy:started", "delayed_job:stop"
after "deploy:published", "delayed_job:start"