执行gitlab sidekiq(rake任务)与暴发户

我试图通过暴发户启动gitlab sidekiq守护进程。 但不幸的是,sidekiq工人似乎是从sidekiq开始deamonizes自己respawned:

Jul 12 17:26:42 git kernel: [370722.042968] init: gitlab-sidekiq main process (28251) terminated with status 1 Jul 12 17:26:42 git kernel: [370722.042997] init: gitlab-sidekiq main process ended, respawning 

有没有一种方法来“掠夺”一个耙子任务? (我知道这个和这个 )或者专门运行gitlab sidekiq作为暴发户脚本。 这是我目前的工作:

 description "Sidekiq Background Worker for Gitlab" # no "start on", we don't want to automatically start start on runlevel [2345] stop on runlevel [!2345] # change to match your deployment user setuid git setgid git env HOME=/home/git env PATH="/usr/local/rvm/gems/ruby-1.9.3-p429@gitlab/bin:/usr/local/rvm/gems/ruby-1.9.3-p429/bin:/usr/local/rvm/gems/ruby-1.9.3-p429@global/bin:/usr/local/rvm/rubies/ruby-1.9.3-p429/bin:/usr/local/rvm/bin:/usr/bin:/bin" env GEM_PATH="/usr/local/rvm/gems/ruby-1.9.3-p429@gitlab:/usr/local/rvm/gems/ruby-1.9.3-p429@global" env RAILS_ENV="production" respawn respawn limit 3 30 script # this script runs in /bin/sh by default cd /home/git/gitlab exec bundle exec rake sidekiq:start end script 

我能修复脚本。 由于sidekiq:开始deamonizes自己我需要把它放入一个启动后和停止后的环境。

 # /etc/init/gitlab-sidekiq.conf - Sidekiq config for gitlab # use the service command: # sudo service gitlab-sidekiq {start,stop,restart,status} description "Sidekiq Background Worker for Gitlab" start on runlevel [2345] stop on runlevel [!2345] # change to match your deployment user setuid git setgid git env HOME=/home/git env PATH="/usr/local/rvm/gems/ruby-1.9.3-p429@gitlab/bin:/usr/local/rvm/gems/ruby-1.9.3-p429/bin:/usr/local/rvm/gems/ruby-1.9.3-p429@global/bin:/usr/local/rvm/rubies/ruby-1.9.3-p429/bin:/usr/local/rvm/bin:/usr/bin:/bin" env GEM_PATH="/usr/local/rvm/gems/ruby-1.9.3-p429@gitlab:/usr/local/rvm/gems/ruby-1.9.3-p429@global" env RAILS_ENV="production" post-start script cd /home/git/gitlab exec bundle exec rake sidekiq:start end script post-stop script cd /home/git/gitlab exec bundle exec rake sidekiq:stop end script