Current Path : /etc/rc4.d/ |
|
Current File : //etc/rc4.d/K02puppet |
#!/bin/bash
# puppet Init script for running the puppet client daemon
#
# Author: Duane Griffin <d.griffin@psenterprise.com>
# David Lutterkort <dlutter@redhat.com>
#
# chkconfig: - 98 02
#
# description: Enables periodic system configuration checks through puppet.
# processname: puppet
# config: /etc/sysconfig/puppet
# Source function library.
. /etc/rc.d/init.d/functions
[ -f /etc/sysconfig/puppet ] && . /etc/sysconfig/puppet
lockfile=/var/lock/subsys/puppet
piddir=/var/run/puppetlabs
pidfile="${piddir}/agent.pid"
puppetd=/opt/puppetlabs/puppet/bin/puppet
pid=$(cat "$pidfile" 2> /dev/null)
RETVAL=0
PUPPET_OPTS="agent "
# Determine if we can use the -p option to daemon, killproc, and status.
# RHEL < 5 can't.
if status | grep -q -- '-p' 2>/dev/null; then
daemonopts="--pidfile $pidfile"
pidopts="-p $pidfile"
USEINITFUNCTIONS=true
fi
# Figure out if the system just booted. Let's assume
# boot doesn't take longer than 5 minutes
## Not used for now
##[ -n "$INIT_VERSION" ] && PUPPET_OPTS="${PUPPET_OPTS} --fullrun"
start() {
echo -n $"Starting puppet agent: "
mkdir -p $piddir
daemon $daemonopts $puppetd ${PUPPET_OPTS} ${PUPPET_EXTRA_OPTS}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch ${lockfile}
return $RETVAL
}
stop() {
echo -n $"Stopping puppet agent: "
if [ "$USEINITFUNCTIONS" = "true" ]; then
killproc $pidopts $puppetd
RETVAL=$?
else
if [ -n "${pid}" ]; then
kill -TERM $pid >/dev/null 2>&1
RETVAL=$?
fi
fi
echo
[ $RETVAL = 0 ] && rm -f ${lockfile} ${pidfile}
return $RETVAL
}
reload() {
echo -n $"Reloading puppet agent: "
if [ "$USEINITFUNCTIONS" = "true" ]; then
killproc $pidopts $puppetd -HUP
RETVAL=$?
else
if [ -n "${pid}" ]; then
kill -HUP $pid >/dev/null 2>&1
RETVAL=$?
else
RETVAL=0
fi
fi
echo
return $RETVAL
}
rotate() {
echo -n $"Reopening log files for puppet agent: "
killproc $pidopts $puppetd -USR2
RETVAL=$?
echo
return $RETVAL
}
restart() {
stop
start
}
rh_status() {
base=puppet
if [ "$USEINITFUNCTIONS" = "true" ]; then
status $pidopts $puppetd
RETVAL=$?
return $RETVAL
else
if [ -n "${pid}" ]; then
if `ps -p $pid | grep $pid > /dev/null 2>&1`; then
echo "${base} (pid ${pid}) is running..."
RETVAL=0
return $RETVAL
fi
fi
if [ -f "${pidfile}" ] ; then
echo "${base} dead but pid file exists"
RETVAL=1
return $RETVAL
fi
if [ -f "${lockfile}" ]; then
echo "${base} dead but subsys locked"
RETVAL=2
return $RETVAL
fi
echo "${base} is stopped"
RETVAL=3
return $RETVAL
fi
}
rh_status_q() {
rh_status >/dev/null 2>&1
}
genconfig() {
echo -n $"Generate puppet agent configuration: "
$puppetd ${PUPPET_OPTS} ${PUPPET_EXTRA_OPTS} --genconfig
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
rotate)
rotate
;;
reload|force-reload)
reload
;;
condrestart|try-restart)
rh_status_q || exit 0
restart
;;
status)
rh_status
;;
once)
shift
$puppetd ${PUPPET_OPTS} --onetime ${PUPPET_EXTRA_OPTS} $@
;;
genconfig)
genconfig
;;
*)
echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart|rotate|once|genconfig}"
exit 1
esac
exit $RETVAL
Copyright 2K16 - 2K18 Indonesian Hacker Rulez