lib/cap_recipes/tasks/delayed_job/manage.rb in nesquena-cap-recipes-0.3.11 vs lib/cap_recipes/tasks/delayed_job/manage.rb in nesquena-cap-recipes-0.3.12
- old
+ new
@@ -1,26 +1,32 @@
Capistrano::Configuration.instance(true).load do
- set :delayed_script_path, 'script/delayed_job'
+ set :delayed_script_path, "#{current_path}/script/delayed_job"
set :delayed_job_env, 'production'
- set :base_ruby_path, '/usr'
-
+ set :delayed_job_role, :app
+ set :base_ruby_path, '/usr'
+
namespace :delayed_job do
desc "Start delayed_job process"
task :start, :roles => :app do
- run "cd #{current_path} && #{sudo} #{base_ruby_path}/bin/ruby #{delayed_script_path} start #{delayed_job_env}"
+ with_role(delayed_job_role) do
+ try_sudo "#{base_ruby_path}/bin/ruby #{delayed_script_path} start #{delayed_job_env}"
+ end
end
desc "Stop delayed_job process"
task :stop, :roles => :app do
- run "cd #{current_path} && #{sudo} #{base_ruby_path}/bin/ruby #{delayed_script_path} stop #{delayed_job_env}"
+ with_role(delayed_job_role) do
+ try_sudo "#{base_ruby_path}/bin/ruby #{delayed_script_path} stop #{delayed_job_env}"
+ end
end
desc "Restart delayed_job process"
task :restart, :roles => :app do
- # run "cd #{current_path} && #{sudo} #{base_ruby_path}/bin/ruby #{delayed_script_path} restart #{delayed_job_env}"
- delayed_job.stop
- sleep(4)
- try_sudo "killall -s TERM delayed_job; true"
- delayed_job.start
+ with_role(delayed_job_role) do
+ delayed_job.stop
+ sleep(4)
+ try_sudo "killall -s TERM delayed_job; true"
+ delayed_job.start
+ end
end
end
end