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