[sks] Fix init scripts

Nick Bebout nb at fedoraproject.org
Tue Aug 12 02:05:23 UTC 2014


commit d9b2b8878a2f797f556b44748f9420c1d0c86fa1
Author: Nick Bebout <nb at fedoraproject.org>
Date:   Mon Aug 11 21:05:16 2014 -0500

    Fix init scripts

 sks-db.init    |  264 ++++++++++++++++++++++++++------------------------------
 sks-recon.init |  261 ++++++++++++++++++++++++++------------------------------
 2 files changed, 245 insertions(+), 280 deletions(-)
---
diff --git a/sks-db.init b/sks-db.init
index c85f7aa..7974284 100755
--- a/sks-db.init
+++ b/sks-db.init
@@ -1,141 +1,125 @@
-    #!/bin/bash
-    #
-    # sks-db          This shell script takes care of starting and stopping
-    #                 the SKS database server.
-    #
-    # chkconfig: - 89 11
-    # description:    SKS is the OpenPGP Synchronizing Key Server.
-    # processname:    sks-db
-    # config:         /etc/sks/sksconf
-    # pidfile:        /var/run/sks-db.pid
-     
-    # Source function library.
-    . /etc/rc.d/init.d/functions
-     
-    # Source networking configuration.
-    . /etc/sysconfig/network
-     
-    # Check that networking is up.
-    [ ${NETWORKING} = "no" ] && exit 1
-     
-    # Defines
-    DESC="the SKS Database Server"
-    PROG="sks-db"
-    EXEC="/usr/sbin/${PROG}"
-    LOCK="/var/lock/subsys/${PROG}"
-    PIDF="/var/run/${PROG}.pid"
-    CONF="/srv/sks/sksconf"
-     
-    # Include config
-    if [ -s /etc/sysconfig/sks ]; then
-      . /etc/sysconfig/sks
-    fi
-     
-    # Further defines
-    RUN_AS="${RUN_AS:-sks}"
-    SKS_SHUT="${SKS_SHUT:-60}"
-    SKS_CMD="`echo ${PROG} | cut -d'-' -f2`"
-     
-    # Check for binaries and configs
-    [ -x ${EXEC} ] || exit 5
-    [ -f ${CONF} ] || exit 6
-     
-     
-    start() {
-            # Start daemons.
-            cd /srv/sks/
-            echo -n $"Starting ${DESC}: "
-    #       daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} -debuglevel 4 -hostname key-server.nausch.org -basedir /var/lib/sks -stat_hour 1 2\>/dev/null \&
-            daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} 2\>/dev/null \&
-    #       daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} ${OPTIONS} 2\>/dev/null \&
-            RETVAL=${?}
-     
-            [ ${RETVAL} -eq 0 ] && {
-              touch ${LOCK}
-              sleep 3
-     
-              PID=`pidof -o %PPID ${PROG}`
-              RETVAL=${?}
-     
-              [ ${RETVAL} -eq 0 ] && echo ${PID} >${PIDF}
-            }
-            echo
-            return ${RETVAL}
-    }
-     
-    stop() {
-            # Stop daemons.
-            echo -n $"Shutting down ${DESC}: "
-            PID=`pidof -o %PPID ${PROG}`
-            RETVAL=${?}
-     
-            [ ${RETVAL} -eq 0 ] && {
-              kill -TERM ${PID}
-     
-              TIMEOUT=0
-              while pidof -o %PPID ${PROG} >/dev/null; do
-                if [ ${TIMEOUT} -ge ${SKS_SHUT} ]; then
-                  RETVAL=1
-                  break
-                else
-                  sleep 5 && echo -n "."
-                  TIMEOUT=$((TIMEOUT+5))
-                fi
-              done
-     
-              [ ${RETVAL} -eq 0 ] && rm -f ${LOCK} ${PIDF}
-            }
-     
-            [ ${RETVAL} -eq 0 ] && success $"${PROG} shutdown" || failure $"${PROG} shutdown"
-            echo
-            return ${RETVAL}
-    }
-     
-    restart() {
-            stop
-            sleep 2
-            start
-    }
-     
-    force_reload() {
-            restart
-    }
-     
-    rh_status() {
-            status ${PROG}
-    }
-     
-    rh_status_q() {
-            rh_status >/dev/null 2>&1
-    }
-     
-     
-    # See how we were called.
-    case "${1}" in
-        start)
-            rh_status_q && exit 0
-            ${1}
-            ;;
-        stop)
-            rh_status_q || exit 0
-            ${1}
-            ;;
-        restart)
-            ${1}
-            ;;
-        force-reload)
-            force_reload
-            ;;
-        status)
-            rh_status
-            ;;
-        condrestart|try-restart)
-            rh_status_q || exit 0
-            restart
-            ;;
-        *)
-            echo $"Usage: ${PROG} {start|stop|status|restart|try-restart|force-reload}"
-            exit 2
-    esac
-    exit ${?}
+#!/bin/bash
+#
+# sks-db          This shell script takes care of starting and stopping
+#                 the SKS database server.
+#
+# chkconfig: - 89 11
+# description:    SKS is the OpenPGP Synchronizing Key Server.
+# processname:    sks-db
+# config:         /etc/sks/sksconf
+# config:         /etc/sysconfig/sks
+# pidfile:        /var/run/sks-db.pid
+### BEGIN INIT INFO
+# Required-Start: $network
+# Required-Stop: $network
+### END INIT INFO
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+# Defines
+DESC="the SKS Database Server"
+PROG="sks-db"
+EXEC="/usr/sbin/${PROG}"
+LOCK="/var/lock/subsys/${PROG}"
+PIDF="/var/run/${PROG}.pid"
+STOP_TIMEOUT="10"
+BASEDIR="/srv/sks"
+HOSTNAME="$(hostname -f)"
+DEBUGLEVEL="0"
+STAT_HOUR="1"
+RUN_AS="sks"
+SKS_SHUT="60"
+SKS_CMD="$(echo ${PROG} | cut -d'-' -f2)"
+
+# Include config
+if [ -s /etc/sysconfig/sks ]; then
+	. /etc/sysconfig/sks
+fi
+
+
+start() {
+	local pid=
+	[ -x "${EXEC}" ] || exit 5
+	# Start daemons.
+	cd "$BASEDIR"
+	if [ ! -d KDB ]; then
+		daemon --user=${RUN_AS} ${EXEC} build || failure
+	fi
+	echo -n $"Starting ${DESC}: "
+	daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} -debuglevel "$DEBUGLEVEL" -hostname "$HOSTNAME" -basedir "$BASEDIR" -stat_hour "$STAT_HOUR" 2\>/dev/null \& || failure
+
+	pid=`pidof -o %PPID ${PROG}`
+	RETVAL=${?}
+	if [ ${RETVAL} -ne 0 ] ; then
+		failure
+	else
+		touch ${LOCK} || failure
+		echo ${pid} >${PIDF} || failure
+		success
+	fi
+
+	echo
+	return ${RETVAL}
+}
+
+stop() {
+	echo -n $"Shutting down ${DESC}: "
+	if [ -f $PIDF ]; then
+		killproc -p "${PIDF}" -d ${STOP_TIMEOUT} $PROG 2\> /dev/null || failure
+		rm -f ${LOCK} || failure
+		rm -f ${PIDF} || failure
+	else
+		failure $"Stopping $prog"
+	fi
+	RETVAL=$?
+	[ ${RETVAL} -eq 0 ] && rm -f "${PIDF}"
+	echo
+}
+
+restart() {
+	stop
+	sleep 2
+	start
+}
+
+force_reload() {
+	restart
+}
+
+rh_status() {
+	status ${PROG}
+}
+
+rh_status_q() {
+	rh_status >/dev/null 2>&1
+}
+
+
+# See how we were called.
+case "${1}" in
+	start)
+		${1}
+		;;
+	stop)
+		${1}
+		;;
+	restart)
+	${1}
+	;;
+	force-reload)
+		force_reload
+		;;
+	status)
+		rh_status
+		;;
+	condrestart|try-restart)
+		rh_status_q || exit 0
+		restart
+		;;
+	*)
+		echo $"Usage: ${PROG} {start|stop|status|restart|try-restart|force-reload}"
+		exit 2
+esac
+exit ${?}
 
diff --git a/sks-recon.init b/sks-recon.init
index 3e4c24f..f542249 100755
--- a/sks-recon.init
+++ b/sks-recon.init
@@ -1,142 +1,123 @@
-    #!/bin/bash
-    #
-    # sks-recon       This shell script takes care of starting and stopping
-    #                 the SKS reconciliation server.
-    #
-    # chkconfig: - 89 11
-    # description:    SKS is the OpenPGP Synchronizing Key Server.
-    # processname:    sks-recon
-    # config:         /srv/sks/sksconf
-    # pidfile:        /var/run/sks-recon.pid
-     
-    # Source function library.
-    . /etc/rc.d/init.d/functions
-     
-    # Source networking configuration.
-    . /etc/sysconfig/network
-     
-    # Check that networking is up.
-    [ ${NETWORKING} = "no" ] && exit 1
-     
-    # Defines
-    DESC="the SKS Reconciliation Server"
-    PROG="sks-recon"
-    EXEC="/usr/sbin/${PROG}"
-    LOCK="/var/lock/subsys/${PROG}"
-    PIDF="/var/run/${PROG}.pid"
-    CONF="/srv/sks/sksconf"
-     
-    # Include config
-    if [ -s /etc/sysconfig/sks ]; then
-      . /etc/sysconfig/sks
-    fi
-     
-    # Further defines
-    RUN_AS="${RUN_AS:-sks}"
-    SKS_SHUT="${SKS_SHUT:-60}"
-    SKS_CMD="`echo ${PROG} | cut -d'-' -f2`"
-
-    # Check for binaries and configs
-    [ -x ${EXEC} ] || exit 5
-    [ -f ${CONF} ] || exit 6
-     
-     
-    start() {
-            # Start daemons.
-            cd /srv/sks/
-            echo -n $"Starting ${DESC}: "
-    #       daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} -debuglevel 4 -hostname key-server.nausch.org -basedir /var/lib/sks -stat_hour 1 2\>/dev/null \&
-            daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} 2\>/dev/null \&
-    #       daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} ${OPTIONS} 2\>/dev/null \&
-            RETVAL=${?}
-     
-            [ ${RETVAL} -eq 0 ] && {
-              touch ${LOCK}
-              sleep 3
-     
-              PID=`pidof -o %PPID ${PROG}`
-              RETVAL=${?}
-     
-              [ ${RETVAL} -eq 0 ] && echo ${PID} >${PIDF}
-            }
-            echo
-            return ${RETVAL}
-    }
-     
-    stop() {
-            # Stop daemons.
-            echo -n $"Shutting down ${DESC}: "
-            PID=`pidof -o %PPID ${PROG}`
-            RETVAL=${?}
-     
-            [ ${RETVAL} -eq 0 ] && {
-              kill -TERM ${PID}
-     
-              TIMEOUT=0
-              while pidof -o %PPID ${PROG} >/dev/null; do
-                if [ ${TIMEOUT} -ge ${SKS_SHUT} ]; then
-                  RETVAL=1
-                  break
-                else
-                  sleep 5 && echo -n "."
-                  TIMEOUT=$((TIMEOUT+5))
-                fi
-              done
-     
-              [ ${RETVAL} -eq 0 ] && rm -f ${LOCK} ${PIDF}
-            }
-     
-            [ ${RETVAL} -eq 0 ] && success $"${PROG} shutdown" || failure $"${PROG} shutdown"
-            echo
-            return ${RETVAL}
-    }
-     
-    restart() {
-            stop
-            sleep 2
-            start
-    }
-     
-    force_reload() {
-            restart
-    }
-     
-    rh_status() {
-            status ${PROG}
-    }
-     
-    rh_status_q() {
-            rh_status >/dev/null 2>&1
-    }
-     
-     
-    # See how we were called.
-    case "${1}" in
-        start)
-            rh_status_q && exit 0
-            ${1}
-            ;;
-        stop)
-            rh_status_q || exit 0
-            ${1}
-            ;;
-        restart)
-            ${1}
-            ;;
-        force-reload)
-            force_reload
-            ;;
-        status)
-            rh_status
-            ;;
-        condrestart|try-restart)
-            rh_status_q || exit 0
-            restart
-            ;;
-        *)
-            echo $"Usage: ${PROG} {start|stop|status|restart|try-restart|force-reload}"
-            exit 2
-    esac
-    exit ${?}
+#!/bin/bash
+#
+# sks-recon       This shell script takes care of starting and stopping
+#                 the SKS reconciliation server.
+#
+# chkconfig: - 89 11
+# description:    SKS is the OpenPGP Synchronizing Key Server.
+# processname:    sks-recon
+# config:         /etc/sks/sksconf
+# config:         /etc/sysconfig/sks
+# pidfile:        /var/run/sks-recon.pid
+### BEGIN INIT INFO
+# Required-Start: $network sks-db
+# Required-Stop: $network
+### END INIT INFO
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+# Defines
+DESC="the SKS Reconciliation Server"
+PROG="sks-recon"
+EXEC="/usr/sbin/${PROG}"
+LOCK="/var/lock/subsys/${PROG}"
+PIDF="/var/run/${PROG}.pid"
+STOP_TIMEOUT="10"
+BASEDIR="/srv/sks"
+HOSTNAME="$(hostname -f)"
+DEBUGLEVEL="0"
+STAT_HOUR="1"
+RUN_AS="sks"
+SKS_SHUT="60"
+SKS_CMD="$(echo ${PROG} | cut -d'-' -f2)"
+
+# Include config
+if [ -s /etc/sysconfig/sks ]; then
+	. /etc/sysconfig/sks
+fi
+
+
+start() {
+	local pid=
+	[ -x "${EXEC}" ] || exit 5
+	# Start daemons.
+	cd "$BASEDIR"
+	echo -n $"Starting ${DESC}: "
+	daemon --user=${RUN_AS} ${EXEC} ${SKS_CMD} -debuglevel "$DEBUGLEVEL" -hostname "$HOSTNAME" -basedir "$BASEDIR" -stat_hour "$STAT_HOUR" 2\>/dev/null \& || failure
+
+	pid=`pidof -o %PPID ${PROG}`
+	RETVAL=${?}
+	if [ ${RETVAL} -ne 0 ] ; then
+		failure
+	else
+		touch ${LOCK} || failure
+		echo ${pid} >${PIDF} || failure
+		success
+	fi
+
+	echo
+	return ${RETVAL}
+}
+
+stop() {
+	echo -n $"Shutting down ${DESC}: "
+	if [ -f "$PIDF" ]; then
+		killproc -p "${PIDF}" -d ${STOP_TIMEOUT} $PROG 2\> /dev/null || failure
+		rm -f ${LOCK} || failure
+		rm -f ${PIDF} || failure
+	else
+		failure $"Stopping $prog"
+	fi
+	RETVAL=$?
+	[ ${RETVAL} -eq 0 ] && rm -f "${PIDF}"
+	echo
+}
+
+restart() {
+	stop
+	sleep 2
+	start
+}
+
+force_reload() {
+	restart
+}
+
+rh_status() {
+	status ${PROG}
+}
+
+rh_status_q() {
+	rh_status >/dev/null 2>&1
+}
+
+
+# See how we were called.
+case "${1}" in
+	start)
+		${1}
+		;;
+	stop)
+		${1}
+		;;
+	restart)
+	${1}
+	;;
+	force-reload)
+		force_reload
+		;;
+	status)
+		rh_status
+		;;
+	condrestart|try-restart)
+		rh_status_q || exit 0
+		restart
+		;;
+	*)
+		echo $"Usage: ${PROG} {start|stop|status|restart|try-restart|force-reload}"
+		exit 2
+esac
+exit ${?}
 
 


More information about the scm-commits mailing list