summaryrefslogtreecommitdiffstats
path: root/debian/puppet.init
blob: da9f548cbbe2aca55ac6b07c9e07cd0374e479bd (plain)
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
#! /bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/puppetd
DAEMON_OPTS="-w 0"
NAME=puppetd
DESC="puppet configuration management tool"

test -x $DAEMON || exit 0

[ -r /etc/default/puppet ] && . /etc/default/puppet

. /lib/lsb/init-functions

start_puppet() {
	start-stop-daemon --start --quiet --pidfile /var/run/puppet/$NAME.pid \
		--startas $DAEMON -- $DAEMON_OPTS
}

stop_puppet() {
	start-stop-daemon --stop --quiet --pidfile /var/run/puppet/$NAME.pid
}

if [ ! -d /var/run/puppet ]; then
	rm -rf /var/run/puppet
	mkdir -p /var/run/puppet
fi

chown puppet:puppet /var/run/puppet

case "$1" in
    start)
	log_begin_msg "Starting $DESC"
	start_puppet
	log_end_msg 0
	;;
    stop)
	log_begin_msg "Stopping $DESC"
	stop_puppet
	log_end_msg 0
	;;
  restart|force-reload)
	log_begin_msg "Restarting $DESC"
	stop_puppet
	sleep 1
	start_puppet
	log_end_msg 0
	;;
  *)
	echo "Usage: $0 {start|stop|restart|force-reload}" >&2
	exit 1
	;;
esac

exit 0