Add load_ok check to script/background_jobs
This commit is contained in:
parent
c0090a3ff5
commit
dd7efd1768
|
@ -6,6 +6,11 @@ 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 warn
|
||||
{
|
||||
echo "$@" 1>&2
|
||||
}
|
||||
|
||||
function stop
|
||||
{
|
||||
bundle exec sidekiqctl stop $sidekiq_pidfile >> $sidekiq_logfile 2>&1
|
||||
|
@ -35,6 +40,22 @@ 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
|
||||
}
|
||||
|
||||
function load_ok
|
||||
{
|
||||
sidekiq_pid=$(cat $sidekiq_pidfile)
|
||||
if [[ -z $sidekiq_pid ]] ; then
|
||||
warn "Could not find a PID in $sidekiq_pidfile"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if (ps -p $sidekiq_pid -o args | grep '\([0-9]\+\) of \1 busy' 1>&2) ; then
|
||||
warn "Too many busy Sidekiq workers"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
exit 0
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
stop)
|
||||
stop
|
||||
|
@ -51,6 +72,9 @@ case "$1" in
|
|||
killall)
|
||||
killall
|
||||
;;
|
||||
load_ok)
|
||||
load_ok
|
||||
;;
|
||||
*)
|
||||
echo "Usage: RAILS_ENV=your_env $0 {stop|start|start_no_deamonize|restart|killall}"
|
||||
esac
|
||||
|
|
Loading…
Reference in New Issue