From 2128419c5b42905a20e2d459fa11c8e4680ed58f Mon Sep 17 00:00:00 2001 From: Jacob Vosmaer Date: Wed, 9 Oct 2013 15:44:25 +0200 Subject: Always shut down sidekiq before starting --- lib/tasks/sidekiq.rake | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/tasks/sidekiq.rake b/lib/tasks/sidekiq.rake index d0e9dfe46a1..e71cf0380ed 100644 --- a/lib/tasks/sidekiq.rake +++ b/lib/tasks/sidekiq.rake @@ -5,7 +5,15 @@ namespace :sidekiq do end desc "GITLAB | Start sidekiq" - task :start do + 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 "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 &" end -- cgit v1.2.1 From 7991b0449920b0c90bd7c529bbb2e5b1699a87ef Mon Sep 17 00:00:00 2001 From: Jacob Vosmaer Date: Wed, 9 Oct 2013 15:46:00 +0200 Subject: Remove duplicate log path generation --- lib/tasks/sidekiq.rake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/tasks/sidekiq.rake b/lib/tasks/sidekiq.rake index e71cf0380ed..46caffd0754 100644 --- a/lib/tasks/sidekiq.rake +++ b/lib/tasks/sidekiq.rake @@ -14,15 +14,19 @@ namespace :sidekiq do Rake::Task['sidekiq:stop'].invoke puts 'Starting new sidekiq process.' end - 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 &" + system "nohup 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 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 -- cgit v1.2.1 From 97f124b31d95ae0adba00b2b906d602f73ae5ffd Mon Sep 17 00:00:00 2001 From: Jacob Vosmaer Date: Wed, 9 Oct 2013 15:48:28 +0200 Subject: Use built-in sidekiq deamonization --- lib/tasks/sidekiq.rake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/tasks/sidekiq.rake b/lib/tasks/sidekiq.rake index 46caffd0754..ba79b6e035d 100644 --- a/lib/tasks/sidekiq.rake +++ b/lib/tasks/sidekiq.rake @@ -14,7 +14,7 @@ namespace :sidekiq do Rake::Task['sidekiq:stop'].invoke puts 'Starting new sidekiq process.' end - system "nohup 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 &" + 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" -- cgit v1.2.1 From 85123076141beea0e79495b240d86c3bbdd92fd8 Mon Sep 17 00:00:00 2001 From: Jacob Vosmaer Date: Wed, 9 Oct 2013 16:49:01 +0200 Subject: Use sidekiq restart rake task in init script --- lib/support/init.d/gitlab | 4 +--- 1 file changed, 1 insertion(+), 3 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 -- cgit v1.2.1