Added configuration to each init scripts so that they log in their own log file,...
[openstack-build/ceilometer-build.git] / trusty / debian / ceilometer-agent-central.init
1 #!/bin/sh
2 ### BEGIN INIT INFO
3 # Provides:          ceilometer-agent-central
4 # Required-Start:    $network $local_fs $remote_fs $syslog
5 # Required-Stop:     $remote_fs
6 # Default-Start:     2 3 4 5
7 # Default-Stop:      0 1 6
8 # Short-Description: ceilometer central agent
9 # Description:       ceilometer central agent
10 ### END INIT INFO
11
12 # Author: Thomas Goirand <zigo@debian.org>
13
14 PATH=/sbin:/usr/sbin:/bin:/usr/bin
15 DESC="Ceilometer Agent Central"
16 SYS_NAME=ceilometer
17 NAME=ceilometer-agent-central
18 DAEMON=/usr/bin/ceilometer-agent-central
19
20 SCRIPTNAME=/etc/init.d/${NAME}
21 DAEMON_USER=${SYS_NAME}
22 DAEMON_GROUP=${SYS_NAME}
23 LOCK_DIR=/var/lock/${SYS_NAME}
24 PID_DIR=/var/run/${SYS_NAME}
25 PID_FILE=${PID_DIR}/${NAME}.pid
26 LOGFILE=/var/log/${SYS_NAME}/${NAME}.log
27 DAEMON_ARGS="--config-file=/etc/${SYSNAME}/ceilometer.conf --log-file=$LOGFILE"
28
29 [ -x $DAEMON ] || exit 0
30
31 for i in ${LOCK_DIR} ${PID_DIR} ; do
32         [ ! -d ${i} ] && mkdir -p ${i}
33         [ -d ${i} ] && chown ${DAEMON_USER}:${DAEMON_GROUP} ${i}
34 done
35
36 . /lib/lsb/init-functions
37
38 do_start() {
39         start-stop-daemon --start \
40                         --background --quiet \
41                         --chuid ${DAEMON_USER}:${DAEMON_GROUP} \
42                         --make-pidfile --pidfile ${PID_FILE} \
43                         --chdir /var/run \
44                         --startas $DAEMON \
45                         --test > /dev/null \
46                         || return 1
47         start-stop-daemon --start \
48                         --background --quiet \
49                         --chuid ${DAEMON_USER}:${DAEMON_GROUP} \
50                         --make-pidfile --pidfile ${PID_FILE} \
51                         --chdir /var/run \
52                         --startas $DAEMON -- $DAEMON_ARGS \
53                         || return 2
54 }
55
56 do_stop() {
57         start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PID_FILE
58         RETVAL=$?
59         rm -f $PID_FILE
60         return "$RETVAL"
61 }
62
63 case "$1" in
64 start)
65         log_daemon_msg "Starting $DESC" "$NAME"
66         do_start
67         case $? in
68                 0|1) log_end_msg 0 ;;
69                 2) log_end_msg 1 ;;
70         esac
71 ;;
72 stop)
73         log_daemon_msg "Stopping $DESC" "$NAME"
74         do_stop
75         case $? in
76                 0|1) log_end_msg 0 ;;
77                 2) log_end_msg 1 ;;
78         esac
79 ;;
80 status)
81         status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
82 ;;
83 restart|force-reload)
84         log_daemon_msg "Restarting $DESC" "$NAME"
85         do_stop
86         case $? in
87         0|1)
88                 do_start
89                 case $? in
90                         0) log_end_msg 0 ;;
91                         1) log_end_msg 1 ;; # Old process is still running
92                         *) log_end_msg 1 ;; # Failed to start
93                 esac
94         ;;
95         *) log_end_msg 1 ;; # Failed to stop
96         esac
97 ;;
98 *)
99         echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
100         exit 3
101 ;;
102 esac
103
104 exit 0