Revision 82cd7760 doc/examples/ganeti.initd.in

b/doc/examples/ganeti.initd.in
18 18

  
19 19
GANETI_DEFAULTS_FILE="@SYSCONFDIR@/default/ganeti"
20 20

  
21
NODED_NAME="ganeti-noded"
22
NODED="@PREFIX@/sbin/${NODED_NAME}"
23
NODED_PID="${GANETIRUNDIR}/${NODED_NAME}.pid"
21
NODED="ganeti-noded"
24 22
NODED_ARGS=""
25 23

  
26
MASTERD_NAME="ganeti-masterd"
27
MASTERD="@PREFIX@/sbin/${MASTERD_NAME}"
28
MASTERD_PID="${GANETIRUNDIR}/${MASTERD_NAME}.pid"
24
MASTERD="ganeti-masterd"
29 25
MASTERD_ARGS=""
30 26

  
31
RAPI_NAME="ganeti-rapi"
32
RAPI="@PREFIX@/sbin/${RAPI_NAME}"
33
RAPI_PID="${GANETIRUNDIR}/${RAPI_NAME}.pid"
27
RAPI="ganeti-rapi"
34 28
RAPI_ARGS=""
35 29

  
36 30
SCRIPTNAME="@SYSCONFDIR@/init.d/ganeti"
37 31

  
38
test -f $NODED || exit 0
32
test -f "@PREFIX@/sbin/$NODED" || exit 0
39 33

  
40 34
. /lib/lsb/init-functions
41 35

  
......
71 65
}
72 66

  
73 67
start_action() {
74
    # called as start_action daemon pidfile
68
    # called as start_action daemon-name
75 69
    local daemon="$1"; shift
76
    local pidfile="$1"; shift
77 70
    log_action_begin_msg "$daemon"
78
    start-stop-daemon --start --quiet --exec "$daemon" --pidfile "$pidfile" \
71
    start-stop-daemon --start --quiet \
72
        --pidfile "${GANETIRUNDIR}/${daemon}.pid" \
73
        --startas "@PREFIX@/sbin/$daemon" \
74
        --oknodo \
79 75
        -- "$@"
80 76
    check_exitcode $?
81 77
}
82 78

  
83 79
stop_action() {
84
    # called as stop_action daemon pidfile
85
    log_action_begin_msg "$1"
80
    # called as stop_action daemon-name
81
    local daemon="$1"
82
    log_action_begin_msg "$daemon"
86 83
    start-stop-daemon --stop --quiet --oknodo \
87
        --retry 30 --pidfile "$2"
84
        --retry 30 --pidfile "${GANETIRUNDIR}/${daemon}.pid"
88 85
    check_exitcode $?
89 86
}
90 87

  
88
maybe_do() {
89
    requested="$1"; shift
90
    action="$1"; shift
91
    target="$1"
92
    if [ -z "$requested" -o "$requested" = "$target" ]; then
93
        $action "$@"
94
    fi
95
}
96

  
97
if [ -n "$2" -a \
98
    "$2" != "$NODED" -a \
99
    "$2" != "$MASTERD" -a \
100
    "$2" != "$RAPI" ]; then
101
    log_failure_msg "Unknown daemon '$2' requested"
102
    exit 1
103
fi
91 104

  
92 105
case "$1" in
93 106
    start)
94
        log_daemon_msg "Starting $DESC" "$NAME"
107
        log_daemon_msg "Starting $DESC" "$2"
95 108
        check_config
96
        start_action $NODED $NODED_PID $NODED_ARGS
97
        start_action $MASTERD $MASTERD_PID $MASTERD_ARGS
98
        start_action $RAPI $RAPI_PID $RAPI_ARGS
109
        maybe_do "$2" start_action $NODED $NODED_ARGS
110
        maybe_do "$2" start_action $MASTERD $MASTERD_ARGS
111
        maybe_do "$2" start_action $RAPI $RAPI_ARGS
99 112
        ;;
100 113
    stop)
101
        log_daemon_msg "Stopping $DESC" "$NAME"
102
        stop_action $RAPI $RAPI_PID
103
        stop_action $MASTERD $MASTERD_PID
104
        stop_action $NODED $NODED_PID
114
        log_daemon_msg "Stopping $DESC" "$2"
115
        maybe_do "$2" stop_action $RAPI
116
        maybe_do "$2" stop_action $MASTERD
117
        maybe_do "$2" stop_action $NODED
105 118
        ;;
106 119
    restart|force-reload)
107
        log_daemon_msg "Reloading $DESC"
108
        stop_action $RAPI $RAPI_PID
109
        stop_action $MASTERD $MASTERD_PID
110
        stop_action $NODED $NODED_PID
120
        log_daemon_msg "Reloading $DESC" "$2"
121
        maybe_do "$2" stop_action $RAPI
122
        maybe_do "$2" stop_action $MASTERD
123
        maybe_do "$2" stop_action $NODED
111 124
        check_config
112
        start_action $NODED $NODED_PID $NODED_ARGS
113
        start_action $MASTERD $MASTERD_PID $MASTERD_ARGS
114
        start_action $RAPI $RAPI_PID $RAPI_ARGS
125
        maybe_do "$2" start_action $NODED $NODED_ARGS
126
        maybe_do "$2" start_action $MASTERD $MASTERD_ARGS
127
        maybe_do "$2" start_action $RAPI $RAPI_ARGS
115 128
        ;;
116 129
    *)
117 130
        log_success_msg "Usage: $SCRIPTNAME {start|stop|force-reload|restart}"

Also available in: Unified diff