summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-10-14 07:00:58 +0000
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-10-14 07:00:58 +0000
commit1073019d360e5aae6fd02efb3e9920a1a3658869 (patch)
treebc6f0bb122da6eda755a3ad4075468c5d9079ee1
parentfdd64bf347ba728135bc4055592808ed0e315d5d (diff)
parent85123076141beea0e79495b240d86c3bbdd92fd8 (diff)
downloadgitlab-ce-1073019d360e5aae6fd02efb3e9920a1a3658869.tar.gz
Merge branch 'sidekiq_restart' of /home/git/repositories/gitlab/gitlabhq
-rwxr-xr-xlib/support/init.d/gitlab4
-rw-r--r--lib/tasks/sidekiq.rake18
2 files changed, 16 insertions, 6 deletions
diff --git a/lib/support/init.d/gitlab b/lib/support/init.d/gitlab
index 6aff7b5a8f9..f157d71b14f 100755
--- a/lib/support/init.d/gitlab
+++ b/lib/support/init.d/gitlab
@@ -218,9 +218,7 @@ reload(){
kill -USR2 "$wpid"
echo "Done."
echo "Restarting GitLab Sidekiq since it isn't capable of reloading its config..."
- RAILS_ENV=$RAILS_ENV bundle exec rake sidekiq:stop
- echo "Starting Sidekiq..."
- RAILS_ENV=$RAILS_ENV bundle exec rake sidekiq:start
+ RAILS_ENV=$RAILS_ENV bundle exec rake sidekiq:restart
# Waiting 2 seconds for sidekiq to write it.
sleep 2
status
diff --git a/lib/tasks/sidekiq.rake b/lib/tasks/sidekiq.rake
index d0e9dfe46a1..ba79b6e035d 100644
--- a/lib/tasks/sidekiq.rake
+++ b/lib/tasks/sidekiq.rake
@@ -5,16 +5,28 @@ namespace :sidekiq do
end
desc "GITLAB | Start sidekiq"
- task :start do
- system "nohup bundle exec sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e #{Rails.env} -P #{pidfile} >> #{Rails.root.join("log", "sidekiq.log")} 2>&1 &"
+ task :start => :restart
+
+ desc 'GitLab | Restart sidekiq'
+ task :restart do
+ if File.exist?(pidfile)
+ puts 'Shutting down existing sidekiq process.'
+ Rake::Task['sidekiq:stop'].invoke
+ puts 'Starting new sidekiq process.'
+ end
+ system "bundle exec sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e #{Rails.env} -P #{pidfile} -d -L #{log_file} >> #{log_file} 2>&1"
end
desc "GITLAB | Start sidekiq with launchd on Mac OS X"
task :launchd do
- system "bundle exec sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e #{Rails.env} -P #{pidfile} >> #{Rails.root.join("log", "sidekiq.log")} 2>&1"
+ system "bundle exec sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e #{Rails.env} -P #{pidfile} >> #{log_file} 2>&1"
end
def pidfile
Rails.root.join("tmp", "pids", "sidekiq.pid")
end
+
+ def log_file
+ Rails.root.join("log", "sidekiq.log")
+ end
end