Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'bin/background_jobs_sk')
-rwxr-xr-xbin/background_jobs_sk67
1 files changed, 67 insertions, 0 deletions
diff --git a/bin/background_jobs_sk b/bin/background_jobs_sk
new file mode 100755
index 00000000000..25218718bb8
--- /dev/null
+++ b/bin/background_jobs_sk
@@ -0,0 +1,67 @@
+#!/bin/sh
+
+cd $(dirname $0)/..
+app_root=$(pwd)
+sidekiq_pidfile="$app_root/tmp/pids/sidekiq.pid"
+sidekiq_logfile="$app_root/log/sidekiq.log"
+sidekiq_config="$app_root/config/sidekiq_queues.yml"
+gitlab_user=$(ls -l config.ru | awk '{print $3}')
+
+warn()
+{
+ echo "$@" 1>&2
+}
+
+stop()
+{
+ bundle exec sidekiqctl stop $sidekiq_pidfile >> $sidekiq_logfile 2>&1
+}
+
+restart()
+{
+ if [ -f $sidekiq_pidfile ]; then
+ stop
+ fi
+
+ pkill -u $gitlab_user -f 'sidekiq [0-9]'
+ start_sidekiq -P $sidekiq_pidfile -d -L $sidekiq_logfile >> $sidekiq_logfile 2>&1
+}
+
+# Starts on foreground but output to the logfile instead stdout.
+start_silent()
+{
+ start_sidekiq >> $sidekiq_logfile 2>&1
+}
+
+start_sidekiq()
+{
+ cmd="exec"
+ chpst=$(which chpst)
+
+ if [ -n "$chpst" ]; then
+ cmd="${cmd} ${chpst} -P"
+ fi
+
+ ${cmd} bundle exec sidekiq -C "${sidekiq_config}" -e $RAILS_ENV "$@"
+}
+
+case "$1" in
+ stop)
+ stop
+ ;;
+ start)
+ restart
+ ;;
+ start_silent)
+ warn "Deprecated: Will be removed at 13.0 (see https://gitlab.com/gitlab-org/gitlab/-/issues/196731)."
+ start_silent
+ ;;
+ start_foreground)
+ start_sidekiq
+ ;;
+ restart)
+ restart
+ ;;
+ *)
+ echo "Usage: RAILS_ENV=<env> $0 {stop|start|start_silent|start_foreground|restart}"
+esac