Here is a simple script to start bitten-slave as a daemon on Redhat derivatives. The example file below should be saved as 'bitten-slave' in '/etc/init.d'. This has been tested on CentOS 5.2, however should run from any system with only minimal changes. You will need to change the DAEMON_ARGS variable to contain a URL which reflects your server.
#!/bin/sh
#
# bitten-slave startup script for the Bitten build slave
# processname: bitten-slave
# config: /etc/bitten/slave
# pidfile: /var/run/bitten-slave.pid
# chkconfig: 2345 99 01
# description: Bitten build slave
# Source function library.
. /etc/rc.d/init.d/functions
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Bitten Slave"
NAME=bitten-slave
DAEMON=/usr/bin/$NAME
DAEMON_ARGS="--interval=15 https://trac.example.org/trac/builds"
DAEMON_USER=bitten-slave
PIDFILE=/var/run/$NAME.pid
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0
# Read configuration variable file if it is present
[ -r /etc/sysconfig/bitten-slave/$NAME ] && . /etc/sysconfig/bitten-slave/$NAME
start() {
echo -n $"Starting $NAME: "
daemon --user="$DAEMON_USER" --pidfile="$PIDFILE" "$DAEMON $DAEMON_ARGS &"
RETVAL=$?
pid=`ps -A | grep $NAME | cut -d" " -f2`
pid=`echo $pid | cut -d" " -f2`
if [ -n "$pid" ]; then
echo $pid > "$PIDFILE"
fi
echo
return $RETVAL
}
stop() {
echo -n $"Stopping $NAME: "
killproc -p "$PIDFILE" -d 10 "$DAEMON"
RETVAL="$?"
echo
[ $RETVAL = 0 ] && rm -f "$PIDFILE"
return "$RETVAL"
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
*)
echo "Usage: $NAME {start|stop|restart}" >&2
exit 1
;;
esac
exit $RETVAL
Last modified 15 years ago
Last modified on Sep 27, 2010, 7:21:14 PM
