4c0c908655
Mac OS uses launchd instead of /etc/init.d to start daemons and tasks to be started by launchd MUST NOT daemon itself. So "nohup" here won't work for Mac OS. Can we add a "launchd" task to the rake file so that we can start sidekiq as "bundle exec rake sidekiq:launchd" ?
21 lines
728 B
Ruby
21 lines
728 B
Ruby
namespace :sidekiq do
|
|
desc "GITLAB | Stop sidekiq"
|
|
task :stop do
|
|
run "bundle exec sidekiqctl stop #{pidfile}"
|
|
end
|
|
|
|
desc "GITLAB | Start sidekiq"
|
|
task :start do
|
|
run "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
|
|
|
|
desc "GITLAB | Start sidekiq with launchd on Mac OS X"
|
|
task :launchd do
|
|
run "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
|
|
|
|
def pidfile
|
|
Rails.root.join("tmp", "pids", "sidekiq.pid")
|
|
end
|
|
end
|