[ndoutils/el5: 2/3] Update SysV init script.
Simone Caronni
slaanesh at fedoraproject.org
Fri Feb 28 14:07:54 UTC 2014
commit 32c788a3c2e7f6ce32e025b3704f5f728129efc3
Author: Simone Caronni <negativo17 at gmail.com>
Date: Fri Feb 28 15:06:06 2014 +0100
Update SysV init script.
ndo2db.init | 128 +++++++++++++++++++++++++++++++----------------------------
1 files changed, 67 insertions(+), 61 deletions(-)
---
diff --git a/ndo2db.init b/ndo2db.init
index 1c57662..630b381 100644
--- a/ndo2db.init
+++ b/ndo2db.init
@@ -1,64 +1,54 @@
-#!/bin/bash
+#!/bin/sh
#
-# ndo2db: Starts the ndoutils ndo2db utility.
+# ndo2db Starts the ndo2db Daemon
#
# chkconfig: - 30 74
-# description: This is a daemon which creates a socket that in then
-# reads from. The expectation is that Nagios will be writing
+# description: This is a daemon which creates a socket that it then \
+# reads from. The expectation is that Nagios will be writing \
# to this socket using nodutils ndomod brokering utility.
-# processname: /usr/sbin/ndo2db
-# config: /etc/nagios/ndo2db.cfg
-# config: /etc/sysconfig/ndo2db
-#
+
+# https://fedoraproject.org/wiki/Packaging:SysVInitScript
### BEGIN INIT INFO
# Provides: ndo2db
# Required-Start: $syslog
# Required-Stop:
# Default-Stop: 0 1 6
# Short-Description: Starts the ndo2db Daemon
-# Description: This is a daemon which creates a socket that in then
-# reads from. The expectation is that Nagios will be writing
-# to this socket using nodutils ndomod brokering utility.
+# Description: This is a daemon which creates a socket that it then \
+# reads from. The expectation is that Nagios will be writing \
+# to this socket using nodutils ndomod brokering utility.
### END INIT INFO
-# Sanity checks.
-[ -f /etc/nagios/ndo2db.cfg ] || exit 0
-[ -x /usr/sbin/ndo2db ] || exit 0
-
# Source function library.
. /etc/rc.d/init.d/functions
-NDO2DBUSER=nagios
-NDO2DB_OPTIONS="-c /etc/nagios/ndo2db.cfg"
-# Source an auxiliary options file if we have one, and pick up NDO2DB_OPTIONS.
-[ -r /etc/sysconfig/ndo2db ] && . /etc/sysconfig/ndo2db
+exec="/usr/sbin/ndo2db"
+prog=${exec##*/}
+config="/etc/nagios/ndo2db.cfg"
+[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
-RETVAL=0
-prog=ndo2db
+lockfile=/var/lock/subsys/$prog
-start () {
+start() {
+ [ -x $exec ] || exit 5
+ [ -f $config ] || exit 6
echo -n $"Starting $prog: "
- if [ "$(pidofproc ndo2db)" = "" ]; then
- rm -f /var/run/ndoutils/ndoutils.sock
- daemon --user=$NDO2DBUSER /usr/sbin/ndo2db $NDO2DB_OPTIONS
- RETVAL=$?
- else
- success
- RETVAL=$?
- fi
+ rm -f /var/run/ndoutils/ndoutils.sock
+ daemon $exec -c $config $NDO2DB_OPTIONS
+ retval=$?
echo
- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/ndo2db
- return $RETVAL
+ [ $retval -eq 0 ] && touch $lockfile
+ return $retval
}
stop() {
echo -n $"Stopping $prog: "
- killproc ndo2db
- RETVAL=$?
+ killproc $prog
+ retval=$?
echo
- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/ndo2db
- return $RETVAL
+ [ $retval -eq 0 ] && rm -f $lockfile
+ return $retval
}
restart() {
@@ -66,35 +56,51 @@ restart() {
start
}
-# See how we were called.
+reload() {
+ restart
+}
+
+force_reload() {
+ restart
+}
+
+rh_status() {
+ # run checks to determine if the service is running or use generic status
+ status $prog
+}
+
+rh_status_q() {
+ rh_status >/dev/null 2>&1
+}
+
case "$1" in
start)
- start
- RETVAL=$?
- ;;
+ rh_status_q && exit 0
+ $1
+ ;;
stop)
- stop
- RETVAL=$?
- ;;
- status)
- status ndo2db
- RETVAL=$?
- ;;
+ rh_status_q || exit 0
+ $1
+ ;;
restart)
- restart
- RETVAL=$?
- ;;
+ $1
+ ;;
reload)
- status ndo2db && restart || start
- RETVAL=$?
- ;;
- condrestart)
- [ -e /var/lock/subsys/ndo2db ] && restart
- RETVAL=$?
- ;;
+ rh_status_q || exit 7
+ $1
+ ;;
+ force-reload)
+ force_reload
+ ;;
+ status)
+ rh_status
+ ;;
+ condrestart|try-restart)
+ rh_status_q || exit 0
+ restart
+ ;;
*)
- echo $"Usage: $0 {start|stop|status|restart|condrestart}"
- RETVAL=1
- ;;
+ echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+ exit 2
esac
-exit $RETVAL
+exit $?
More information about the scm-commits
mailing list