1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
|
#!/bin/sh
#
# LSB header
### BEGIN INIT INFO
# Provides: ansible-test
# Default-Start: 3 4 5
# Default-Stop: 0 1 2 6
# Short-Description: test daemon for ansible
# Description: This is a test daemon used by ansible for testing only
### END INIT INFO
# chkconfig header
# chkconfig: 345 99 99
# description: This is a test daemon used by ansible for testing only
#
# processname: /usr/sbin/ansible_test_service
# Sanity checks.
[ -x /usr/sbin/ansible_test_service ] || exit 0
DEBIAN_VERSION=/etc/debian_version
# Source function library.
if [ -f $DEBIAN_VERSION ]; then
. /lib/lsb/init-functions
else
. /etc/rc.d/init.d/functions
fi
SERVICE=ansible_test_service
PROCESS=ansible_test_service
CONFIG_ARGS=" "
if [ -f $DEBIAN_VERSION ]; then
LOCKFILE=/var/lock/$SERVICE
else
LOCKFILE=/var/lock/subsys/$SERVICE
fi
RETVAL=0
start() {
echo -n "Starting ansible test daemon: "
if [ -e $DEBIAN_VERSION ]; then
if [ -f $LOCKFILE ]; then
echo -n "already started, lock file found"
RETVAL=1
elif /usr/sbin/ansible_test_service; then
echo -n "OK"
RETVAL=0
fi
else
daemon --check $SERVICE $PROCESS --daemonize $CONFIG_ARGS
fi
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch $LOCKFILE
return $RETVAL
}
stop() {
echo -n "Stopping ansible test daemon: "
if [ -f $DEBIAN_VERSION ]; then
# Added this since Debian's start-stop-daemon doesn't support spawned processes
if ps -ef | grep "/usr/sbin/ansible_test_service" | grep -v grep | awk '{print $2}' | xargs kill &> /dev/null; then
echo -n "OK"
RETVAL=0
else
echo -n "Daemon is not started"
RETVAL=1
fi
else
killproc -p /var/run/${SERVICE}.pid
fi
RETVAL=$?
echo
if [ $RETVAL -eq 0 ]; then
rm -f $LOCKFILE
rm -f /var/run/$SERVICE.pid
fi
}
restart() {
stop
start
}
# See how we were called.
case "$1" in
start|stop|restart)
$1
;;
status)
if [ -f $DEBIAN_VERSION ]; then
if [ -f $LOCKFILE ]; then
RETVAL=0
echo "ansible test is running."
else
RETVAL=1
echo "ansible test is stopped."
fi
else
status $PROCESS
RETVAL=$?
fi
;;
condrestart)
[ -f $LOCKFILE ] && restart || :
;;
reload)
echo "ok"
RETVAL=0
;;
*)
echo "Usage: $0 {start|stop|status|restart|condrestart|reload}"
exit 1
;;
esac
exit $RETVAL
|