]>
Commit | Line | Data |
---|---|---|
1 | #!/bin/sh | |
2 | # init vars | |
3 | service="$1" | |
4 | action="$2" | |
5 | desc="$3" | |
6 | quiet=$quiet | |
7 | noop=$noop | |
8 | if [ -z "$desc" ]; then | |
9 | desc="$1 service" | |
10 | fi | |
11 | ||
12 | # action stop implies quiet mode and check disabling | |
13 | if [ "$action" = "stop" ]; then | |
14 | quiet=1 | |
15 | else | |
16 | check=1 | |
17 | fi | |
18 | ||
19 | # common part | |
20 | service_body() { | |
21 | cat <<-EOF | |
22 | if [ ! -x /bin/systemd_booted ] || ! /bin/systemd_booted; then | |
23 | if [ -f /var/lock/subsys/$service ]; then | |
24 | EOF | |
25 | if [ "$noop" = 1 ]; then | |
26 | echo : | |
27 | else | |
28 | cat <<-EOF | |
29 | /sbin/service $service $action 1>&2 || :; | |
30 | EOF | |
31 | fi | |
32 | ||
33 | if [ "$quiet" != 1 ]; then | |
34 | cat <<-EOF | |
35 | else | |
36 | echo 'Run "/sbin/service $service start" to start $desc.' | |
37 | EOF | |
38 | fi | |
39 | cat <<-EOF | |
40 | fi | |
41 | fi | |
42 | EOF | |
43 | } | |
44 | ||
45 | # include check function | |
46 | skip_auto_restart_body() { | |
47 | cat <<-EOF | |
48 | skip_auto_restart() { | |
49 | [ -f /etc/sysconfig/rpm ] && . /etc/sysconfig/rpm | |
50 | [ -f /etc/sysconfig/$service ] && . /etc/sysconfig/$service | |
51 | echo \${RPM_SKIP_AUTO_RESTART:-no} | |
52 | }; | |
53 | EOF | |
54 | } | |
55 | ||
56 | echo '' | |
57 | if [ "$check" = 1 ]; then | |
58 | skip_auto_restart_body | |
59 | echo 'if [ $(skip_auto_restart) = no ]; then' | |
60 | service_body | |
61 | echo 'else' | |
62 | # service restart was disabled, tell them to restart it | |
63 | cat <<-EOF | |
64 | if [ ! -x /bin/systemd_booted ] || ! /bin/systemd_booted; then | |
65 | if [ -f /var/lock/subsys/$service ]; then | |
66 | echo 'Run "/sbin/service $service restart" to restart $desc.' | |
67 | fi | |
68 | else NORESTART=1 # for %%systemd_post if called after | |
69 | fi | |
70 | EOF | |
71 | echo 'fi' | |
72 | else | |
73 | service_body | |
74 | fi | |
75 | ||
76 | exit 0 | |
77 | ||
78 | # for testing - no syntax errors allowed | |
79 | rpm -E '%service monit restart' | sh | |
80 | rpm -E '%service monit restart -q' | sh | |
81 | rpm -E '%service monit stop' | sh | |
82 | rpm -E '%service monit stop -q' | sh | |
83 | rpm -E '%service monit stop "Monit Daemon"' | sh | |
84 | rpm -E '%service monit stop "Monit Daemon" -q' | sh | |
85 | rpm -E '%service monit restart "Monit Daemon"' | sh | |
86 | rpm -E '%service monit restart -q "Monit Daemon"' | sh | |
87 | rpm -E '%service monit reload "Monit Daemon"' | sh | |
88 | rpm -E '%service monit reload -q "Monit Daemon"' | sh | |
89 | rpm -E '%{service monit reload "Monit Daemon"} date' | sh | |
90 | rpm -E '%{service monit reload "Monit Daemon" -q} date' | sh | |
91 | rpm -E '%{service -n monit restart "Monit Daemon" } date' | sh | |
92 |