_VS_NEWLINE='
'
declare -r _VS_NEWLINE=${_VS_NEWLINE:0-1}
-declare -r VS_ALLVSERVERS_ARGS=all,marked,unmarked,stopped,running
function findObject
{
eval $1='( "${_ga_tmp[@]}" )'
}
+declare -r VS_ALLVSERVERS_ARGS=all,marked,unmarked,stopped,running,mark:
## Usage: getAllVserversByArg <var> <arg>
function getAllVserversByArg
{
shift
;;
(--) break;;
- (*) return 1;;
+ (*) set -- "$_gav_v" "$@"
+ return 1;;
esac
getAllVservers _gav_tmp "$_gav_mark" $_gav_extra
declare -a tmp_vservers=()
declare -r TAB=$(echo -en "\t")
-OPTION_MARK=
-OPTION_MARK_ANY=1
OPTION_PARALLEL=99
OPTION_DEBUG=
NOOPTION_DEBUG=1
*) OPTION_FLAVOR=;;
esac
+gav_args=()
while true; do
- getAllVserversByArg tmp_vservers "$1" || \
case "$1" in
(--help) showHelp $0 ;;
(--version) showVersion $0 ;;
(-c) CONFDIR=$2; shift;;
- (-m) OPTION_MARK=$2; OPTION_MARK_ANY=; shift;;
(-j) OPTION_PARALLEL=$2; shift;;
(--start) OPTION_FLAVOR=start;;
(--stop) OPTION_FLAVOR=stop;;
(--debug) OPTION_DEBUG=1; NOOPTION_DEBUG=; set -x;;
(--) shift; break;;
- (*) echo $"$0: internal error; arg=='$1'" >&2; exit 1;;
+ (-m) gav_args=( "${gav_args[@]}" --mark "$2" )
+ shift
+ ;;
+ (*) gav_args=( "${gav_args[@]}" "$1" );;
esac
shift
done
+if test "${#gav_args[@]}" -gt 0; then
+ if ! getAllVserversByArg tmp_vservers "${gav_args[@]}"; then
+ echo $"$0: internal error; arg=='$1'" >&2
+ exit 1
+ fi
+fi
+
test -n "$OPTION_FLAVOR" || {
echo "$0: unknown invocation method; aborting..." >&2
exit 1
vservers=( "$@" "${tmp_vservers[@]}" )
-orig_vservers=$vservers
-i=${#vservers[*]}
-
-while test $i -gt 0; do
- let --i
- d=$__CONFDIR/${vservers[$i]}/apps/init
- f=$d/mark
- { test -n "$OPTION_MARK_ANY"; } || \
- { test -n "$OPTION_MARK" -a -r "$f" && grep -qx "$OPTION_MARK" "$f"; } || \
- { test -z "$OPTION_MARK" && test ! -e "$f"; } || \
- unset vservers[$i]
-done
-
makedir=$($_MKTEMPDIR vserver-init.XXXXXX)
okfile=$($_MKTEMP vserver-init.XXXXXX)
passedfile=$($_MKTEMP vserver-init.XXXXXX)
exit 0
}
-tmp=$(getopt -o +q --long help,version,debug,quiet,all -n "$0" -- "$@") || exit 1
+tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1
eval set -- "$tmp"
declare -a send_through vsomething_opts
(--version) showVersion ;;
(--debug) send_through=( "${send_through[@]}" "$1" ); set -x;;
(--quiet|-q) send_through=( "${send_through[@]}" "$1" );;
- (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
(--) shift; break;;
- (*) echo $"vapt-get: internal error; arg=='$1'" >&2; exit 1;;
+ (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
esac
shift
done
exit 0
}
-tmp=$(getopt -o +q --long help,version,debug,quiet,all -n "$0" -- "$@") || exit 1
+tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1
eval set -- "$tmp"
declare -a send_through vsomething_opts
(--version) showVersion ;;
(--debug) send_through=( "${send_through[@]}" "$1" ); set -x;;
(--quiet|-q) send_through=( "${send_through[@]}" "$1" );;
- (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
(--) test ${#vsomething_opts[@]} -eq 0 && shift; break;;
- (*) echo $"vdispatch-conf: internal error; arg=='$1'" >&2; exit 1;;
+ (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
esac
shift
done
exit 0
}
-tmp=$(getopt -o +q --long help,version,debug,quiet,all -n "$0" -- "$@") || exit 1
+tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1
eval set -- "$tmp"
declare -a send_through vsomething_opts
(--version) showVersion ;;
(--debug) send_through=( "${send_through[@]}" "$1" ); set -x;;
(--quiet|-q) send_through=( "${send_through[@]}" "$1" );;
- (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
(--) test ${#vsomething_opts[@]} -eq 0 && shift; break;;
- (*) echo $"vemerge: internal error; arg=='$1'" >&2; exit 1;;
+ (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
esac
shift
done
(--version) showVersion ;;
(--debug) send_through=( "${send_through[@]}" "$1" ); set -x;;
(--quiet|-q) send_through=( "${send_through[@]}" "$1" );;
- (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
(--overlay) overlay="${2%/}";;
(--overlay-host) overlay_host="${2%/}";;
(--overlay-only) overlay_only=1;;
(--) test ${#vsomething_opts[@]} -eq 0 && shift; break;;
- (*) echo $"vesync: internal error; arg=='$1'" >&2; exit 1;;
+ (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
esac
shift
done
exit 0
}
-tmp=$(getopt -o +q --long help,version,debug,quiet,all -n "$0" -- "$@") || exit 1
+tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1
eval set -- "$tmp"
declare -a send_through vsomething_opts
(--version) showVersion ;;
(--debug) send_through=( "${send_through[@]}" "$1" ); set -x;;
(--quiet|-q) send_through=( "${send_through[@]}" "$1" );;
- (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
(--) shift; break;;
- (*) echo $"vrpm: internal error; arg=='$1'" >&2; exit 1;;
+ (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
esac
shift
done
exit 0
}
-tmp=$(getopt -o +q --long help,version,debug,quiet,all -n "$0" -- "$@") || exit 1
+tmp=$(getopt -o +q --long help,version,debug,quiet,$VS_ALLVSERVERS_ARGS -n "$0" -- "$@") || exit 1
eval set -- "$tmp"
declare -a send_through vsomething_opts
(--version) showVersion ;;
(--debug) send_through=( "${send_through[@]}" "$1" ); set -x;;
(--quiet|-q) send_through=( "${send_through[@]}" "$1" );;
- (--all) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
(--) test ${#vsomething_opts[@]} -eq 0 && shift; break;;
- (*) echo $"vupdateworld: internal error; arg=='$1'" >&2; exit 1;;
+ (*) vsomething_opts=( "${vsomething_opts[@]}" "$1" );;
esac
shift
done