#!/bin/sh # # /etc/rc.d/rc.@CSCM_PROGRAM@d - @CSCM_PROGRAM_NAME@ daemon control script. # BIN=@sbindir@/@PROGRAM_DAEMON@ CONF=@CSCM_CONFIG@ BCF=@CSCM_HOME_PATH@/@CSCM_PROGRAM@/@CSCM_PROGRAM@.bcf PID=@CSCM_PID_DIR@/@CSCM_PROGRAM@d.pid LOG=@CSCM_LOG_DIR@/@CSCM_PROGRAM@d.log INOTIFY=--inotify cscmd_start() { # Sanity checks. if [ ! -r $CONF ]; then echo "$CONF does not appear to exist. Abort." exit 1 fi if [ -s $PID ]; then echo "@CSCM_PROGRAM_NAME@ daemon appears to already be running?" exit 1 fi echo "Starting @CSCM_PROGRAM_NAME@ server daemon..." if [ -x $BIN ]; then $BIN --daemonize $INOTIFY --scm=@CSCM_NAME@ --pid=$PID --log=$LOG --bcf=$BCF --config=$CONF fi } cscmd_test_conf() { echo "Checking configuration for correct syntax and then" echo "trying to open files referenced in configuration..." echo "" if [ -s $PID ] ; then echo "@PROGRAM_DAEMON@: $CONF: Config file is correct." else $BIN --test --scm=@CSCM_NAME@ --pid=$PID --log=$LOG --bcf=$BCF --config=$CONF fi } cscmd_status() { if [ -s $PID ] ; then echo "@CSCM_PROGRAM_NAME@ daemon is running as PID: $(cat $PID)" else echo "@CSCM_PROGRAM_NAME@ daemon is stopped." fi } cscmd_stop() { echo "Shutdown @CSCM_PROGRAM_NAME@ daemon gracefully..." if [ -s $PID ] ; then kill -TERM $(cat $PID) else echo "@CSCM_PROGRAM_NAME@ daemon appears to already be stopped." fi } cscmd_reload() { echo "Reloading @CSCM_PROGRAM_NAME@ daemon configuration..." if [ -s $PID ] ; then kill -HUP $(cat $PID) else echo "@CSCM_PROGRAM_NAME@ daemon is not running." fi } cscmd_restart() { cscmd_stop sleep 3 cscmd_start } case "$1" in check) cscmd_test_conf ;; reload) cscmd_reload ;; restart) cscmd_restart ;; start) cscmd_start ;; stop) cscmd_stop ;; status) cscmd_status ;; *) echo "usage: `basename $0` {check|reload|restart|start|stop|status}" esac