]> git.pld-linux.org Git - packages/rpm-pld-macros.git/blame_incremental - service_generator.sh
- up to 1.601
[packages/rpm-pld-macros.git] / service_generator.sh
... / ...
CommitLineData
1#!/bin/sh
2# init vars
3service="$1"
4action="$2"
5desc="$3"
6quiet=$quiet
7noop=$noop
8if [ -z "$desc" ]; then
9 desc="$1 service"
10fi
11
12# action stop implies quiet mode and check disabling
13if [ "$action" = "stop" ]; then
14 quiet=1
15else
16 check=1
17fi
18
19# common part
20service_body() {
21 cat <<-EOF
22 if [ -f /var/lock/subsys/$service ]; then
23 EOF
24 if [ "$noop" = 1 ]; then
25 echo :
26 else
27 cat <<-EOF
28 /sbin/service $service $action 1>&2 || :;
29 EOF
30 fi
31
32 if [ "$quiet" != 1 ]; then
33 cat <<-EOF
34 else
35 echo 'Run "/sbin/service $service start" to start $desc.'
36 EOF
37 fi
38 cat <<-EOF
39 fi
40 EOF
41}
42
43# include check function
44skip_auto_restart_body() {
45 cat <<-EOF
46 skip_auto_restart() {
47 [ -f /etc/sysconfig/rpm ] && . /etc/sysconfig/rpm
48 [ -f /etc/sysconfig/$service ] && . /etc/sysconfig/$service
49 echo \${RPM_SKIP_AUTO_RESTART:-no}
50 };
51 EOF
52}
53
54echo ''
55if [ "$check" = 1 ]; then
56 skip_auto_restart_body
57 echo 'if [ $(skip_auto_restart) = no ]; then'
58 service_body
59 echo 'fi'
60else
61 service_body
62fi
63
64exit 0
65
66# for testing - no syntax errors allowed
67rpm -E '%service monit restart' | sh
68rpm -E '%service monit restart -q' | sh
69rpm -E '%service monit stop' | sh
70rpm -E '%service monit stop -q' | sh
71rpm -E '%service monit stop "Monit Daemon"' | sh
72rpm -E '%service monit stop "Monit Daemon" -q' | sh
73rpm -E '%service monit restart "Monit Daemon"' | sh
74rpm -E '%service monit restart -q "Monit Daemon"' | sh
75rpm -E '%service monit reload "Monit Daemon"' | sh
76rpm -E '%service monit reload -q "Monit Daemon"' | sh
77rpm -E '%{service monit reload "Monit Daemon"} date' | sh
78rpm -E '%{service monit reload "Monit Daemon" -q} date' | sh
79rpm -E '%{service -n monit restart "Monit Daemon" } date' | sh
80
This page took 0.062366 seconds and 4 git commands to generate.