root / snf-ganeti-tools / conf / init.d / snf-ganeti-eventd @ 98340727
History | View | Annotate | Download (3.5 kB)
1 | ddba635c | Constantinos Venetsanopoulos | #! /bin/sh |
---|---|---|---|
2 | ddba635c | Constantinos Venetsanopoulos | |
3 | ddba635c | Constantinos Venetsanopoulos | ### BEGIN INIT INFO |
4 | ddba635c | Constantinos Venetsanopoulos | # Provides: snf-ganeti-eventd |
5 | ddba635c | Constantinos Venetsanopoulos | # Required-Start: $remote_fs $syslog ganeti |
6 | ddba635c | Constantinos Venetsanopoulos | # Required-Stop: $remote_fs $syslog |
7 | ddba635c | Constantinos Venetsanopoulos | # Default-Start: 2 3 4 5 |
8 | fc2c900d | Vangelis Koukis | # Default-Stop: 0 1 6 |
9 | ddba635c | Constantinos Venetsanopoulos | # X-Start-After: ganeti |
10 | ddba635c | Constantinos Venetsanopoulos | # Short-Description: Synnefo ganeti-eventd daemon |
11 | ddba635c | Constantinos Venetsanopoulos | # Description: ganeti-eventd is a daemon |
12 | ddba635c | Constantinos Venetsanopoulos | ### END INIT INFO |
13 | ddba635c | Constantinos Venetsanopoulos | |
14 | ddba635c | Constantinos Venetsanopoulos | set -e |
15 | ddba635c | Constantinos Venetsanopoulos | |
16 | ddba635c | Constantinos Venetsanopoulos | # /etc/init.d/snf-ganeti-eventd: start and stop the ganeti-eventd daemon |
17 | ddba635c | Constantinos Venetsanopoulos | # script skeleton stolen from rsyncd |
18 | ddba635c | Constantinos Venetsanopoulos | |
19 | ddba635c | Constantinos Venetsanopoulos | |
20 | ddba635c | Constantinos Venetsanopoulos | DAEMON=/usr/sbin/snf-ganeti-eventd |
21 | ddba635c | Constantinos Venetsanopoulos | SNF_EVENTD_PID_FILE=/var/run/snf-ganeti-eventd.pid |
22 | ddba635c | Constantinos Venetsanopoulos | SNF_EVENTD_DEFAULTS=/etc/default/snf-ganeti-eventd |
23 | ddba635c | Constantinos Venetsanopoulos | SNF_EVENTD_OPTS='' |
24 | ddba635c | Constantinos Venetsanopoulos | SNF_EVENTD_ENABLE=true |
25 | ddba635c | Constantinos Venetsanopoulos | SNF_USER="root" |
26 | ddba635c | Constantinos Venetsanopoulos | |
27 | ddba635c | Constantinos Venetsanopoulos | test -x $DAEMON || exit 0 |
28 | ddba635c | Constantinos Venetsanopoulos | |
29 | ddba635c | Constantinos Venetsanopoulos | . /lib/lsb/init-functions |
30 | ddba635c | Constantinos Venetsanopoulos | |
31 | ddba635c | Constantinos Venetsanopoulos | if [ -s $SNF_EVENTD_DEFAULTS_FILE ]; then |
32 | ddba635c | Constantinos Venetsanopoulos | . $SNF_EVENTD_DEFAULTS_FILE |
33 | ddba635c | Constantinos Venetsanopoulos | fi |
34 | ddba635c | Constantinos Venetsanopoulos | |
35 | ddba635c | Constantinos Venetsanopoulos | export PATH="${PATH:+$PATH:}/usr/sbin:/sbin" |
36 | ddba635c | Constantinos Venetsanopoulos | |
37 | ddba635c | Constantinos Venetsanopoulos | eventd_start() { |
38 | ddba635c | Constantinos Venetsanopoulos | if start-stop-daemon --start --chuid $SNF_USER --pidfile $SNF_EVENTD_PID_FILE \ |
39 | ddba635c | Constantinos Venetsanopoulos | --exec $DAEMON -- $SNF_EVENTD_OPTS |
40 | ddba635c | Constantinos Venetsanopoulos | then |
41 | ddba635c | Constantinos Venetsanopoulos | rc=0 |
42 | ddba635c | Constantinos Venetsanopoulos | sleep 1 |
43 | ddba635c | Constantinos Venetsanopoulos | if ! kill -0 $(cat $SNF_EVENTD_PID_FILE) >/dev/null 2>&1; then |
44 | ddba635c | Constantinos Venetsanopoulos | log_failure_msg "snf-ganeti-eventd daemon failed to start" |
45 | ddba635c | Constantinos Venetsanopoulos | rc=1 |
46 | ddba635c | Constantinos Venetsanopoulos | fi |
47 | ddba635c | Constantinos Venetsanopoulos | else |
48 | ddba635c | Constantinos Venetsanopoulos | rc=1 |
49 | ddba635c | Constantinos Venetsanopoulos | fi |
50 | ddba635c | Constantinos Venetsanopoulos | if [ $rc -eq 0 ]; then |
51 | ddba635c | Constantinos Venetsanopoulos | log_end_msg 0 |
52 | ddba635c | Constantinos Venetsanopoulos | else |
53 | ddba635c | Constantinos Venetsanopoulos | log_end_msg 1 |
54 | ddba635c | Constantinos Venetsanopoulos | rm -f $SNF_EVENTD_PID_FILE |
55 | ddba635c | Constantinos Venetsanopoulos | fi |
56 | ddba635c | Constantinos Venetsanopoulos | } # eventd_start |
57 | ddba635c | Constantinos Venetsanopoulos | |
58 | ddba635c | Constantinos Venetsanopoulos | MASTER=`/usr/sbin/gnt-cluster getmaster` |
59 | ddba635c | Constantinos Venetsanopoulos | HOST=`/bin/hostname -f` |
60 | ddba635c | Constantinos Venetsanopoulos | |
61 | ddba635c | Constantinos Venetsanopoulos | case "$1" in |
62 | ddba635c | Constantinos Venetsanopoulos | start) |
63 | 98340727 | Constantinos Venetsanopoulos | if [ "x$MASTER" != x$HOST ] ; then |
64 | 98340727 | Constantinos Venetsanopoulos | log_warning_msg "snf-ganeti-eventd should run on the ganeti master only, aborting" |
65 | 98340727 | Constantinos Venetsanopoulos | log_end_msg 0 |
66 | 98340727 | Constantinos Venetsanopoulos | exit 0 |
67 | 98340727 | Constantinos Venetsanopoulos | fi |
68 | 98340727 | Constantinos Venetsanopoulos | |
69 | ddba635c | Constantinos Venetsanopoulos | if "$SNF_EVENTD_ENABLE"; then |
70 | ddba635c | Constantinos Venetsanopoulos | log_daemon_msg "Starting snf-ganeti-eventd daemon" "snf-ganeti-eventd" |
71 | ddba635c | Constantinos Venetsanopoulos | if [ -s $SNF_EVENTD_PID_FILE ] && kill -0 $(cat $SNF_EVENTD_PID_FILE) >/dev/null 2>&1; then |
72 | ddba635c | Constantinos Venetsanopoulos | log_progress_msg "apparently already running" |
73 | ddba635c | Constantinos Venetsanopoulos | log_end_msg 0 |
74 | ddba635c | Constantinos Venetsanopoulos | exit 0 |
75 | ddba635c | Constantinos Venetsanopoulos | fi |
76 | ddba635c | Constantinos Venetsanopoulos | eventd_start |
77 | ddba635c | Constantinos Venetsanopoulos | else |
78 | ddba635c | Constantinos Venetsanopoulos | if [ -s "$SNF_EVENTD_CONFIG_FILE" ]; then |
79 | ddba635c | Constantinos Venetsanopoulos | [ "$VERBOSE" != no ] && log_warning_msg "snf-ganeti-eventd daemon not enabled in $SNF_EVENTD_DEFAULTS_FILE, not starting..." |
80 | ddba635c | Constantinos Venetsanopoulos | fi |
81 | ddba635c | Constantinos Venetsanopoulos | fi |
82 | ddba635c | Constantinos Venetsanopoulos | ;; |
83 | ddba635c | Constantinos Venetsanopoulos | stop) |
84 | ddba635c | Constantinos Venetsanopoulos | log_daemon_msg "Stopping snf-ganeti-eventd daemon" "snf-ganeti-eventd" |
85 | ddba635c | Constantinos Venetsanopoulos | start-stop-daemon --stop --quiet --oknodo --pidfile $SNF_EVENTD_PID_FILE |
86 | ddba635c | Constantinos Venetsanopoulos | log_end_msg $? |
87 | ddba635c | Constantinos Venetsanopoulos | rm -f $SNF_EVENTD_PID_FILE |
88 | ddba635c | Constantinos Venetsanopoulos | ;; |
89 | ddba635c | Constantinos Venetsanopoulos | restart) |
90 | ddba635c | Constantinos Venetsanopoulos | set +e |
91 | ddba635c | Constantinos Venetsanopoulos | if $SNF_EVENTD_ENABLE; then |
92 | ddba635c | Constantinos Venetsanopoulos | log_daemon_msg "Restarting snf-ganeti-eventd daemon" "snf-ganeti-eventd" |
93 | ddba635c | Constantinos Venetsanopoulos | if [ -s $SNF_EVENTD_PID_FILE ] && kill -0 $(cat $SNF_EVENTD_PID_FILE) >/dev/null 2>&1; then |
94 | ddba635c | Constantinos Venetsanopoulos | start-stop-daemon --stop --quiet --oknodo --pidfile $SNF_EVENTD_PID_FILE || true |
95 | ddba635c | Constantinos Venetsanopoulos | sleep 1 |
96 | ddba635c | Constantinos Venetsanopoulos | else |
97 | ddba635c | Constantinos Venetsanopoulos | log_warning_msg "snf-ganeti-eventd daemon not running, attempting to start." |
98 | ddba635c | Constantinos Venetsanopoulos | rm -f $SNF_EVENTD_PID_FILE |
99 | ddba635c | Constantinos Venetsanopoulos | fi |
100 | ddba635c | Constantinos Venetsanopoulos | eventd_start |
101 | ddba635c | Constantinos Venetsanopoulos | else |
102 | ddba635c | Constantinos Venetsanopoulos | if [ -s "$SNF_EVENTD_CONFIG_FILE" ]; then |
103 | ddba635c | Constantinos Venetsanopoulos | [ "$VERBOSE" != no ] && log_warning_msg "snf-ganeti-eventd daemon not enabled in $SNF_EVENTD_DEFAULTS_FILE, not starting..." |
104 | ddba635c | Constantinos Venetsanopoulos | fi |
105 | ddba635c | Constantinos Venetsanopoulos | fi |
106 | ddba635c | Constantinos Venetsanopoulos | ;; |
107 | ddba635c | Constantinos Venetsanopoulos | |
108 | ddba635c | Constantinos Venetsanopoulos | status) |
109 | ddba635c | Constantinos Venetsanopoulos | status_of_proc -p $SNF_EVENTD_PID_FILE "$DAEMON" ganeti-eventd |
110 | ddba635c | Constantinos Venetsanopoulos | exit $? # notreached due to set -e |
111 | ddba635c | Constantinos Venetsanopoulos | ;; |
112 | ddba635c | Constantinos Venetsanopoulos | *) |
113 | ddba635c | Constantinos Venetsanopoulos | echo "Usage: /etc/init.d/snf-ganeti-eventd {start|stop|restart|status}" |
114 | ddba635c | Constantinos Venetsanopoulos | exit 1 |
115 | ddba635c | Constantinos Venetsanopoulos | esac |
116 | ddba635c | Constantinos Venetsanopoulos | |
117 | ddba635c | Constantinos Venetsanopoulos | exit 0 |