#!/bin/sh

# description: slony startup script
# mare@ypsilon.net


prefix="/usr/bin"

SLONUSER=slony
SLONDB=replicationdatabase
SLONSTDERRLOG="/var/log/slony/slon-flights.err"
SLONSTDOUTLOG="/var/log/slony/slon-flights.out"
SLONCONF="T1"

PIDFILE="/var/run/slony.pid"

if echo '\c' | grep -s c >/dev/null 2>&1 ; then
    ECHO_N="echo -n"
    ECHO_C=""
else
    ECHO_N="echo"
    ECHO_C='\c'
fi

DAEMON="$prefix/slon"

test -f $DAEMON || exit 0

case $1 in
     start)
           $ECHO_N "Starting Slony: "$ECHO_C
           echo su - $SLONUSER -c "$DAEMON -b -p $PIDFILE $SLONCONF dbname=$SLONDB 2>$SLONSTDERRLOG 1>$SLONSTDOUTLOG </dev/null"
	   echo "ok"
           ;;
     stop)
           # couldn't really test this because my online slony version didn't work with the cvs version....
           $ECHO_N "Stopping Slony: "$ECHO_C
	   test -f $PIDFILE # might change since it's optional
           if [ "$?" = "0" ]; then
                read slonypid < $PIDFILE
                kill -9 $slonypid ## kill -9 is ugly!
		if [ "$?" = "0" ]; then
                     echo "ok"
                else 
                     echo "not ok"
                fi
		rm -rf $slonypid
           else
                echo "slony isn't running"
           fi
           ;;
     restart)
           #todo
           exit 0
           ;;
     *)
           echo "Usage $0 {start|stop|restart}" 1>&2
           exit 1
           ;;
esac
exit 0
