move cap tasks into separate files
This commit is contained in:
38
lib/capistrano/tasks/delayed_job.rake
Normal file
38
lib/capistrano/tasks/delayed_job.rake
Normal file
@@ -0,0 +1,38 @@
|
||||
namespace :delayed_job do
|
||||
desc "Start delayed_job process"
|
||||
task :start do
|
||||
on roles(:app) do
|
||||
within current_path do
|
||||
hostname = capture("hostname").strip
|
||||
execute :bundle, "exec", "script/delayed_job", "--queues=default,#{hostname}", "-n 2", "start"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
desc "Stop delayed_job process"
|
||||
task :stop do
|
||||
on roles(:app) do
|
||||
within current_path do
|
||||
execute :bundle, "exec", "script/delayed_job", "stop"
|
||||
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
|
||||
|
||||
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
|
||||
Reference in New Issue
Block a user