#!/bin/sh
#
# Bcfg2Server - Bcfg2 configuration daemon
#
# chkconfig: 2345 19 81
# description: bcfg2 server for configuration requests
#
### BEGIN INIT INFO
# Provides: bcfg2-server
# Required-Start: $network
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: S 0 1 6
# Short-Description: Configuration management Server
# Description: Bcfg2 is a configuration management system that builds
# installs configuration files served by bcfg2-server
### END INIT INFO
DAEMON=/usr/sbin/bcfg2-server
PIDFILE=/var/run/bcfg2-server.pid
PARAMS="-D $PIDFILE"
# Exit if $DAEMON doesn't exist and is not executable
test -x $DAEMON || exit 5
# Include lsb functions
. /lib/lsb/init-functions
# Internal variables
BINARY=$(basename $DAEMON)
case "$1" in
start)
echo -n "Starting Configuration Management Server: "
start_daemon ${DAEMON} ${PARAMS}
STATUS=$?
if [ "$STATUS" = 0 ]
then
log_success_msg "bcfg2-server"
else
log_failure_msg "bcfg2-server"
fi
exit $STATUS
;;
stop)
echo -n "Stopping Configuration Management Server: "
killproc ${BINARY}
STATUS=$?
if [ "$STATUS" = 0 ]; then
log_success_msg "bcfg2-server"
exit 0
else
log_failure_msg "bcfg2-server"
fi
exit $STATUS
;;
restart|force-reload|reload)
$0 stop
sleep 5
$0 start
;;
status)
# Inspired by redhat /etc/init.d/functions status() call
PID=$(pidof -x $BINARY)
if [ -n "$PID" ]; then
echo "$BINARY (pid $PID) is running..."
exit 0
fi
if [ -f $PIDFILE ]; then
if [ -n "$PID" ]; then
log_failure_msg "$BINARY dead but pid file exists..."
exit 1
fi
fi
log_failure_msg "$BINARY is not running"
exit 3
;;
*)
log_success_msg "Usage: $0 {start|stop|status|reload|restart|force-reload}"
exit 1
;;
esac
exit 0
syntax highlighted by Code2HTML, v. 0.9.1