#!/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/starman

SERVER=starman
NAME=your_project
WORK_DIR=.....
LIB_DIR=......

PIDFILE=/var/run/starman/$NAME.pid
LOG_FILE=/var/log/starman/apimonitor.log

SCRIPT=app.psgi
PORT=5600
USER=web

test -x $DAEMON || exit 0

. /lib/lsb/init-functions

case "$1" in
    start)
        log_begin_msg "Starting starman for $NAME service..."

        start-stop-daemon --quiet --start --chuid $USER --chdir $WORK_DIR --pidfile=$PIDFILE \
        --exec /usr/local/bin/starman -- -I$LIB_DIR --p $PORT --error-log $LOG_FILE $SCRIPT -D --pid $PIDFILE
        log_end_msg $?
    ;;

    stop)
        log_begin_msg "Stopping starman for $NAME service..."
        start-stop-daemon --stop --quiet --pidfile $PIDFILE
        log_end_msg $?
    ;;

    restart)
        log_begin_msg "Restarting starman for $NAME service..."
        start-stop-daemon --stop --retry 5 --quiet --pidfile $PIDFILE
        log_end_msg $?

        log_begin_msg "Starting starman for $NAME service..."
        start-stop-daemon --quiet --start --chuid $USER --chdir $WORK_DIR --pidfile=$PIDFILE \
        --exec /usr/local/bin/starman -- -I$LIB_DIR --p $PORT --error-log $LOG_FILE $SCRIPT -D --pid $PIDFILE
        log_end_msg $?
    ;;

    status)
        status_of_proc -p $PIDFILE "$DAEMON" $NAME
    ;;

    *)
        N=/etc/init.d/$SERVER
        echo "Usage: $N {start|stop|restart|status}" >&2
        exit 1
    ;;
esac

exit 0
