#!/bin/bash cd $(dirname $0)/.. app_root=$(pwd) sidekiq_pidfile="$app_root/tmp/pids/sidekiq.pid" sidekiq_logfile="$app_root/log/sidekiq.log" gitlab_user=$(ls -l config.ru | awk '{print $3}') function stop { bundle exec sidekiqctl stop $sidekiq_pidfile >> $sidekiq_logfile 2>&1 } function killall { pkill -u $gitlab_user -f sidekiq } function restart { if [ -f $sidekiq_pidfile ]; then stop fi killall start_sidekiq -d -L $sidekiq_logfile } function start_no_deamonize { start_sidekiq } function start_sidekiq { bundle exec sidekiq -q post_receive,mailer,system_hook,project_web_hook,gitlab_shell,common,default -e $RAILS_ENV -P $sidekiq_pidfile $@ >> $sidekiq_logfile 2>&1 } case "$1" in stop) stop ;; start) restart ;; start_no_deamonize) start_no_deamonize ;; restart) restart ;; killall) killall ;; *) echo "Usage: RAILS_ENV=your_env $0 {stop|start|start_no_deamonize|restart|killall}" esac