Files
@ f533c054fb19
Branch filter:
Location: kallithea/init.d/rhodecode-daemon2 - annotation
f533c054fb19
1.7 KiB
text/plain
It's better to use Exception here than assertion. It plays better with the exception handling software like sentry or errormator
2642f128ad46 2642f128ad46 238bea955b54 2642f128ad46 f9540f9c5999 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 f9540f9c5999 2642f128ad46 f9540f9c5999 f9540f9c5999 f9540f9c5999 2642f128ad46 f9540f9c5999 2642f128ad46 2642f128ad46 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 2642f128ad46 f9540f9c5999 2642f128ad46 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 238bea955b54 238bea955b54 238bea955b54 238bea955b54 238bea955b54 238bea955b54 238bea955b54 238bea955b54 f9540f9c5999 238bea955b54 238bea955b54 238bea955b54 238bea955b54 238bea955b54 f9540f9c5999 238bea955b54 238bea955b54 238bea955b54 238bea955b54 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 f9540f9c5999 2642f128ad46 f9540f9c5999 f9540f9c5999 f9540f9c5999 2642f128ad46 238bea955b54 2642f128ad46 2642f128ad46 238bea955b54 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 238bea955b54 238bea955b54 2642f128ad46 238bea955b54 2642f128ad46 2642f128ad46 2642f128ad46 2642f128ad46 f9540f9c5999 | #!/bin/sh -e
########################################
#### THIS IS A DEBIAN INIT.D SCRIPT ####
########################################
### BEGIN INIT INFO
# Provides: rhodecode
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts instance of rhodecode
# Description: starts instance of rhodecode using start-stop-daemon
### END INIT INFO
APP_NAME="rhodecode"
APP_HOMEDIR="opt"
APP_PATH="/$APP_HOMEDIR/$APP_NAME"
CONF_NAME="production.ini"
PID_PATH="$APP_PATH/$APP_NAME.pid"
LOG_PATH="$APP_PATH/$APP_NAME.log"
PYTHON_PATH="/$APP_HOMEDIR/$APP_NAME-venv"
RUN_AS="root"
DAEMON="$PYTHON_PATH/bin/paster"
DAEMON_OPTS="serve --daemon \
--user=$RUN_AS \
--group=$RUN_AS \
--pid-file=$PID_PATH \
--log-file=$LOG_PATH $APP_PATH/$CONF_NAME"
start() {
echo "Starting $APP_NAME"
PYTHON_EGG_CACHE="/tmp" start-stop-daemon -d $APP_PATH \
--start --quiet \
--pidfile $PID_PATH \
--user $RUN_AS \
--exec $DAEMON -- $DAEMON_OPTS
}
stop() {
echo "Stopping $APP_NAME"
start-stop-daemon -d $APP_PATH \
--stop --quiet \
--pidfile $PID_PATH || echo "$APP_NAME - Not running!"
if [ -f $PID_PATH ]; then
rm $PID_PATH
fi
}
status() {
echo -n "Checking status of $APP_NAME ... "
pid=`cat $PID_PATH`
status=`ps ax | grep $pid | grep -ve grep`
if [ "$?" -eq 0 ]; then
echo "running"
else
echo "NOT running"
fi
}
case "$1" in
status)
status
;;
start)
start
;;
stop)
stop
;;
restart)
echo "Restarting $APP_NAME"
### stop ###
stop
wait
### start ###
start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
|