corosync-pve/debian/corosync-notifyd.init
Thomas Lamprecht 8dcb3076b4 move to submodule build
allowing us to drop the tarball tracking and the patches-of-patches
thing, which is just plain annoying and costs to much time and nerves
when touching anything..

diffoscope tested previous and current .deb, only real change is the
exclusion of the changelog from Debian, but as that was ordered after
ours anyway it shouldn't be to big of an issue

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2019-10-03 15:56:25 +02:00

120 lines
2.9 KiB
Bash

#! /bin/sh
#
### BEGIN INIT INFO
# Provides: corosync-notifyd
# Required-Start: $network $remote_fs $syslog corosync
# Required-Stop: $network $remote_fs $syslog corosync
# Should-Start: dbus
# Should-Stop: dbus
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: corosync notifying daemon
# Description: Manages the notification daemon of the Corosync Cluster Engine.
### END INIT INFO
# Author: Fabio M. Di Nitto <fabbione@ubuntu.com>
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin
DESC="corosync notifying daemon"
NAME=corosync-notifyd
DAEMON=/usr/sbin/$NAME
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
PIDFILE=/var/run/corosync.pid
RARUNDIR=/var/run/resource-agents
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0
# Read configuration variable file if it is present
[ -r /etc/default/corosync-notifyd ] && . /etc/default/corosync-notifyd
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
#
# Function that starts the daemon/service
#
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
start-stop-daemon --start --quiet --exec $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --exec $DAEMON -- $OPTIONS \
|| return 2
# Add code here, if necessary, that waits for the process to be ready
# to handle requests from services started subsequently which depend
# on this one. As a last resort, sleep for some time.
pidof $DAEMON > $PIDFILE
}
#
# Function that stops the daemon/service
#
do_stop()
{
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --quiet --retry forever/QUIT/1 --pidfile $PIDFILE
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILE
return "$RETVAL"
}
case "$1" in
start)
log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0|1) log_end_msg 0 ;;
2) log_end_msg 1 ;;
esac
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0|1) log_end_msg 0 ;;
2) log_end_msg 1 ;;
esac
;;
restart|force-reload)
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
status|monitor)
status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
: