Mercurial > kallithea
view init.d/kallithea-daemon-debian @ 5806:f33cc4af706b
tests: finally block also needs to be executed if api_call itself fails
The cleanup code (finally block) should be executed as soon as something what
changes the db fails.
I don't remember which one but one of these tests failed and caused all the
others to fail as well because the database wasn't cleaned up after the first
failure. That made finding the root cause more difficult then it should have
been.
author | domruf <dominikruf@gmail.com> |
---|---|
date | Tue, 12 Apr 2016 22:45:46 +0200 |
parents | 99ad9d0af1a3 |
children | e285bb7abb28 |
line wrap: on
line source
#!/bin/sh -e ######################################## #### THIS IS A DEBIAN INIT.D SCRIPT #### ######################################## ### BEGIN INIT INFO # Provides: kallithea # Required-Start: $all # Required-Stop: $all # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: starts instance of kallithea # Description: starts instance of kallithea using start-stop-daemon ### END INIT INFO APP_NAME="kallithea" 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