mirror of
https://github.com/mperham/sidekiq.git
synced 2022-11-09 13:52:34 -05:00
parent
c95a6b12ea
commit
8e64985837
1 changed files with 17 additions and 9 deletions
|
@ -10,7 +10,7 @@ namespace :load do
|
||||||
set :sidekiq_cmd, ->{ }
|
set :sidekiq_cmd, ->{ }
|
||||||
set :sidekiqctl_cmd, ->{ }
|
set :sidekiqctl_cmd, ->{ }
|
||||||
|
|
||||||
# must be relative to Rails.root. If this changes, you'll need to manually
|
# If this changes, you'll need to manually
|
||||||
# stop the existing sidekiq process.
|
# stop the existing sidekiq process.
|
||||||
set :sidekiq_pid, ->{ "tmp/sidekiq.pid" }
|
set :sidekiq_pid, ->{ "tmp/sidekiq.pid" }
|
||||||
|
|
||||||
|
@ -36,6 +36,14 @@ namespace :sidekiq do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def pid_full_path(pid_path)
|
||||||
|
if pid_path.start_with?("/")
|
||||||
|
pid_path
|
||||||
|
else
|
||||||
|
"#{current_path}/#{pid_path}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
task :add_default_hooks do
|
task :add_default_hooks do
|
||||||
after 'deploy:starting', 'sidekiq:quiet'
|
after 'deploy:starting', 'sidekiq:quiet'
|
||||||
after 'deploy:updated', 'sidekiq:stop'
|
after 'deploy:updated', 'sidekiq:stop'
|
||||||
|
@ -47,12 +55,12 @@ namespace :sidekiq do
|
||||||
task :quiet do
|
task :quiet do
|
||||||
on roles fetch(:sidekiq_role) do
|
on roles fetch(:sidekiq_role) do
|
||||||
for_each_process do |pid_file, idx|
|
for_each_process do |pid_file, idx|
|
||||||
if test "[ -f #{current_path}/#{pid_file} ]"
|
if test "[ -f #{pid_full_path(pid_file)} ]"
|
||||||
within current_path do
|
within current_path do
|
||||||
if fetch(:sidekiqctl_cmd)
|
if fetch(:sidekiqctl_cmd)
|
||||||
execute fetch(:sidekiqctl_cmd), 'quiet', "#{current_path}/#{pid_file}"
|
execute fetch(:sidekiqctl_cmd), 'quiet', "#{pid_full_path(pid_file)}"
|
||||||
else
|
else
|
||||||
execute :bundle, :exec, :sidekiqctl, 'quiet', "#{current_path}/#{pid_file}"
|
execute :bundle, :exec, :sidekiqctl, 'quiet', "#{pid_full_path(pid_file)}"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -64,12 +72,12 @@ namespace :sidekiq do
|
||||||
task :stop do
|
task :stop do
|
||||||
on roles fetch(:sidekiq_role) do
|
on roles fetch(:sidekiq_role) do
|
||||||
for_each_process do |pid_file, idx|
|
for_each_process do |pid_file, idx|
|
||||||
if test "[ -f #{current_path}/#{pid_file} ]"
|
if test "[ -f #{pid_full_path(pid_file)} ]"
|
||||||
within current_path do
|
within current_path do
|
||||||
if fetch(:sidekiqctl_cmd)
|
if fetch(:sidekiqctl_cmd)
|
||||||
execute fetch(:sidekiqctl_cmd), 'stop', "#{current_path}/#{pid_file}", fetch(:sidekiq_timeout)
|
execute fetch(:sidekiqctl_cmd), 'stop', "#{pid_full_path(pid_file)}", fetch(:sidekiq_timeout)
|
||||||
else
|
else
|
||||||
execute :bundle, :exec, :sidekiqctl, 'stop', "#{current_path}/#{pid_file}", fetch(:sidekiq_timeout)
|
execute :bundle, :exec, :sidekiqctl, 'stop', "#{pid_full_path(pid_file)}", fetch(:sidekiq_timeout)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
@ -84,9 +92,9 @@ namespace :sidekiq do
|
||||||
within current_path do
|
within current_path do
|
||||||
for_each_process do |pid_file, idx|
|
for_each_process do |pid_file, idx|
|
||||||
if fetch(:sidekiq_cmd)
|
if fetch(:sidekiq_cmd)
|
||||||
execute fetch(:sidekiq_cmd), "-d -i #{idx} -P #{pid_file} #{fetch(:sidekiq_options)}"
|
execute fetch(:sidekiq_cmd), "-d -i #{idx} -P #{pid_full_path(pid_file)} #{fetch(:sidekiq_options)}"
|
||||||
else
|
else
|
||||||
execute :bundle, :exec, :sidekiq, "-d -i #{idx} -P #{pid_file} #{fetch(:sidekiq_options)}"
|
execute :bundle, :exec, :sidekiq, "-d -i #{idx} -P #{pid_full_path(pid_file)} #{fetch(:sidekiq_options)}"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Add table
Reference in a new issue