diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-10-14 07:00:58 +0000 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-10-14 07:00:58 +0000 |
commit | 1073019d360e5aae6fd02efb3e9920a1a3658869 (patch) | |
tree | bc6f0bb122da6eda755a3ad4075468c5d9079ee1 | |
parent | fdd64bf347ba728135bc4055592808ed0e315d5d (diff) | |
parent | 85123076141beea0e79495b240d86c3bbdd92fd8 (diff) | |
download | gitlab-ce-1073019d360e5aae6fd02efb3e9920a1a3658869.tar.gz |
Merge branch 'sidekiq_restart' of /home/git/repositories/gitlab/gitlabhq
-rwxr-xr-x | lib/support/init.d/gitlab | 4 | ||||
-rw-r--r-- | lib/tasks/sidekiq.rake | 18 |
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 |