diff options
| author | William Hubbs <williamh@gentoo.org> | 2011-10-17 13:47:45 -0500 | 
|---|---|---|
| committer | William Hubbs <williamh@gentoo.org> | 2011-11-16 13:56:55 -0600 | 
| commit | 5b1aaf8cc803e9f21f8a0c94236ab5dddba4b2fc (patch) | |
| tree | 4ef1037e3bad3f69409720e26342f31c064a3d39 /sh | |
| parent | 5994e55937cbbb71b1c22ad829b77a1bcd8c3793 (diff) | |
| download | openrc-5b1aaf8cc803e9f21f8a0c94236ab5dddba4b2fc.tar.xz | |
add support for extra_stopped_commands
Diffstat (limited to 'sh')
| -rw-r--r-- | sh/runscript.sh.in | 17 | 
1 files changed, 14 insertions, 3 deletions
| diff --git a/sh/runscript.sh.in b/sh/runscript.sh.in index 010c794f..f86a5107 100644 --- a/sh/runscript.sh.in +++ b/sh/runscript.sh.in @@ -98,7 +98,8 @@ describe()  	fi  	local svc= desc= -	for svc in ${extra_commands:-$opts} $extra_started_commands; do +	for svc in ${extra_commands:-$opts} $extra_started_commands \ +		$extra_stopped_commands; do  		eval desc=\$description_$svc  		if [ -n "$desc" ]; then  			einfo "$HILITE$svc$NORMAL: $desc" @@ -213,7 +214,7 @@ unset _f  if [ -n "$opts" ]; then  		ewarn "Use of the opts variable is deprecated and will be"  		ewarn "removed in the future." -		ewarn "Please use extra_commands or extra_started_commands." +		ewarn "Please use extra_commands, extra_started_commands or extra_stopped_commands."  fi  while [ -n "$1" ]; do @@ -225,7 +226,7 @@ while [ -n "$1" ]; do  	fi  	# See if we have the required function and run it  	for _cmd in describe start stop status ${extra_commands:-$opts} \ -		$extra_started_commands +		$extra_started_commands $extra_stopped_commands  	do  		if [ "$_cmd" = "$1" ]; then  			if [ "$(command -v "$1")" = "$1" ]; then @@ -253,6 +254,16 @@ while [ -n "$1" ]; do  						fi  					fi  				done +				# Check to see if we need to be stopped before +				# we can run this command +				for _cmd in $extra_stopped_commands; do +					if [ "$_cmd" = "$1" ]; then +						if ! service_stopped; then +							eerror "$RC_SVCNAME: cannot \`$1' as it has not been stopped" +							exit 1 +						fi +					fi +				done  				unset _cmd  				if [ "$(command -v "$1_pre")" = "$1_pre" ]  				then | 
