Here's a modified init script for tinyerp-server that will manage multiple 
server instances:

#!/bin/bash
# tinyerp-server        This shell script takes care of 
starting and stopping
#                      
 TinyERP server
#
# chkconfig: - 95 05
# description: TinyERP Server
#
# pidfile: /var/run/tinyerp-server$svr.pid
# config: /etc/tinyerp-server$svr.conf

PATH=/usr/bin:/sbin:/bin:/usr/sbin
export PATH

# Source function library.
. /etc/rc.d/init.d/functions

svr="${2:+-$2}"
PIDFILE=/var/spool/tinyerp/tinyerp-server$svr.pid
LOCKFILE=/var/lock/subsys/tinyerp-server$svr
LOGFILE=/var/log/tinyerp/tinyerp-server$svr.log

OPTS="--pidfile=$PIDFILE --logfile=$LOGFILE"

prog="tinyerp-server"

# check if the tinyerp-server conf file is present, then use it
if [ -f /etc/tinyerp-server$svr.conf ]; then
    OPTS="$OPTS -c /etc/tinyerp-server$svr.conf"
fi

# check the existence of the tinyerp-server script
[ -z "/usr/bin/tinyerp-server" ] && exit 0

RETVAL=0

start() {
    echo -n $"Starting $prog: "
    daemon --user tinyerp --check tinyerp-server "/usr/bin/setsid 
/usr/bin/tinyerp-server $OPTS &"

    RETVAL=$?
    [ $RETVAL -eq 0 ] && touch $LOCKFILE
    echo
    return $RETVAL
}

stop() {
    echo -n  $"Stopping $prog: "
    kill -TERM `cat $PIDFILE` > /dev/null 2>&1
    RETVAL=$?
    if [ $RETVAL -eq 0 ] ; then
        rm -f $LOCKFILE

        echo_success
        echo 
    else
        echo_failure
        echo
    fi
    return $RETVAL
}    

restart() {
    stop
    start
}    

condrestart() {
    [ -e $LOCKFILE ] && restart || :
}

rhstatus() { 
    if [ -f $PIDFILE ] ; then
        checkpid `cat $PIDFILE`
        RETVAL=$?
        if [ $RETVAL -eq 0 ] ; then
            echo  $"$prog is running..."
        else
            echo  $"$prog is stopped"
        fi
    else
        echo  $"$prog is stopped"
    fi
    return $RETVAL
}

case "$1" in
start)
    start
    ;;

stop)
    stop
    ;;

restart)
    restart
    ;;

condrestart)
    condrestart
    ;;

status)
    rhstatus
    ;;

probe)
    exit 0
    ;;

*)
    echo $"Usage:   $0 
{start|stop|status|restart|condrestart} [servername]"
    echo $"Example: $0 start        # default"
    echo $"Example: $0 start devel  # start named server 
from /etc/tinyerp-server-devel.conf"
    exit 1
esac

exit $?

Regards,
Gerry




_______________________________________________
Tinyerp-users mailing list
http://tiny.be/mailman/listinfo/tinyerp-users

Reply via email to