summaryrefslogtreecommitdiff
path: root/script/background_jobs
blob: 4c888096ba98231e612a37ca4aae590026db8e89 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/bin/bash

cd $(dirname $0)/..
app_root=$(pwd)
sidekiq_pidfile="$app_root/tmp/pids/sidekiq.pid"
sidekiq_logfile="$app_root/log/sidekiq.log"
gitlab_ci_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_ci_user -f sidekiq
}

function restart
{
  if [ -f $sidekiq_pidfile ]; then
    stop
  fi
  killall
  start_sidekiq 
}

function start_sidekiq
{
  bundle exec sidekiq -q runner,common,default -e $RAILS_ENV -P $sidekiq_pidfile -d -L $sidekiq_logfile >> $sidekiq_logfile 2>&1
}

case "$1" in
  stop)
    stop
    ;;
  start)
    restart
    ;;
  restart)
    restart
    ;;
  killall)
    killall
    ;;
  *)
    echo "Usage: RAILS_ENV=your_env $0 {stop|start|restart|killall}"
esac