diff options
author | Michael Fenn <fennm@deshawresearch.com> | 2013-03-28 09:36:21 -0400 |
---|---|---|
committer | Chris St. Pierre <chris.a.st.pierre@gmail.com> | 2013-03-28 10:24:56 -0400 |
commit | b8b15234bcf3fc4edecf219e2c3331e9eee54b17 (patch) | |
tree | f69dcbb1be9e17f6b8aeccc3564d0838fcba2b6d /redhat | |
parent | 52824a1cf8786c318269f71f0cc7c234d4a92f73 (diff) | |
download | bcfg2-b8b15234bcf3fc4edecf219e2c3331e9eee54b17.tar.gz bcfg2-b8b15234bcf3fc4edecf219e2c3331e9eee54b17.tar.bz2 bcfg2-b8b15234bcf3fc4edecf219e2c3331e9eee54b17.zip |
Pass through retval from start, stop, status, etc.
The various init scripts have the usual start, stop, and status
functions which are called from a case statement. The functions
even nicely return various values for success and failure.
Unfortunately, those values were not passed all the way back to the
calling shell.
Previously, the init scripts would return 0 if any of start, stop, or
status failed. This commit ensures that they they pass the return
value back to the caller.
Why does this matter? Well, beyond just being generally good
citizens, bcfg2's own chkconfig client tool expects stopped services
to return a non-zero exit code when their status function is called.
Otherwise it flags the service state as incorrect and tries to stop
it on every run.
Diffstat (limited to 'redhat')
-rwxr-xr-x | redhat/scripts/bcfg2-report-collector.init | 9 | ||||
-rwxr-xr-x | redhat/scripts/bcfg2-server.init | 3 | ||||
-rwxr-xr-x | redhat/scripts/bcfg2.init | 4 |
3 files changed, 13 insertions, 3 deletions
diff --git a/redhat/scripts/bcfg2-report-collector.init b/redhat/scripts/bcfg2-report-collector.init index a8e23f080..43e875a6b 100755 --- a/redhat/scripts/bcfg2-report-collector.init +++ b/redhat/scripts/bcfg2-report-collector.init @@ -32,6 +32,7 @@ test -x $DAEMON || exit 5 # Internal variables BINARY=$(basename $DAEMON) +RETVAL=0 start () { echo -n "Starting Configuration Report Collector: " @@ -79,22 +80,26 @@ status () { case "$1" in start) start + RETVAL=$? ;; stop) stop + RETVAL=$? ;; status) status + RETVAL=$? ;; restart|reload|force-reload) stop sleep 5 start + RETVAL=$? ;; *) echo "Usage: $0 {start|stop|status|reload|restart|force-reload}" - exit 1 + RETVAL=1 ;; esac -exit 0 +exit $RETVAL diff --git a/redhat/scripts/bcfg2-server.init b/redhat/scripts/bcfg2-server.init index ffac6ac3d..c4412d1c3 100755 --- a/redhat/scripts/bcfg2-server.init +++ b/redhat/scripts/bcfg2-server.init @@ -59,9 +59,11 @@ stop () { case "$1" in start) start + RETVAL=$? ;; stop) stop + RETVAL=$? ;; status) status $prog @@ -71,6 +73,7 @@ case "$1" in stop sleep 5 start + RETVAL=$? ;; *) echo $"Usage: $0 {start|stop|status|restart|reload|force-reload}" diff --git a/redhat/scripts/bcfg2.init b/redhat/scripts/bcfg2.init index 5cfdf47bc..9c26434ff 100755 --- a/redhat/scripts/bcfg2.init +++ b/redhat/scripts/bcfg2.init @@ -54,12 +54,14 @@ start () { case "$1" in start) start + RETVAL=$? ;; stop|status) - exit 0 + RETVAL=0 ;; restart|force-reload) start + RETVAL=$? ;; *) echo "Usage: $0 {start|stop|status|restart|force-reload}" |