gitlab-org--gitlab-foss/bin/web_unicorn
Qingyu Zhao b7ea4bd853 Enable puma by default in GDK
Two changes:
1. Move bin/web to bin/web_unicorn(removed PUMA switching logic)
Introduce new shadow script bin/web. Now we have 3 scripts working
together: bin/web, bin/web_puma, bin/web_unicorn

  In bin/web, it checks ENV['USE_WEB_SERVER']:
    - if value is 'puma' or value is not set, call bin/web_puma
    - if value is 'unicorn', call bin/web_unicorn
    - report error if other values given

2. Gitlab rails allow ENV setting to override timeout
    - ENV['GITLAB_RAILS_RACK_TIMEOUT'] for service_timeout
    - ENV['GITLAB_RAILS_WAIT_TIMEOUT'] for wait_timeout
2019-07-09 23:31:32 +10:00

58 lines
798 B
Bash
Executable file

#!/bin/sh
cd $(dirname $0)/..
app_root=$(pwd)
unicorn_pidfile="$app_root/tmp/pids/unicorn.pid"
unicorn_config="$app_root/config/unicorn.rb"
unicorn_cmd="bundle exec unicorn_rails -c $unicorn_config -E $RAILS_ENV"
get_unicorn_pid()
{
local pid=$(cat $unicorn_pidfile)
if [ -z "$pid" ] ; then
echo "Could not find a PID in $unicorn_pidfile"
exit 1
fi
unicorn_pid=$pid
}
start()
{
exec $unicorn_cmd -D
}
start_foreground()
{
exec $unicorn_cmd
}
stop()
{
get_unicorn_pid
kill -QUIT $unicorn_pid
}
reload()
{
get_unicorn_pid
kill -USR2 $unicorn_pid
}
case "$1" in
start)
start
;;
start_foreground)
start_foreground
;;
stop)
stop
;;
reload)
reload
;;
*)
echo "Usage: RAILS_ENV=your_env $0 {start|stop|reload}"
;;
esac