util-vserver 0.30.215.
[util-vserver.git] / scripts / vesync
index 2c98175..8bcc98e 100755 (executable)
@@ -1,5 +1,5 @@
 #!/bin/bash
-# $Id: vesync 2363 2006-11-03 14:36:23Z hollow $
+# $Id: vesync 2635 2007-11-17 23:52:59Z hollow $
 
 # Copyright (C) 2006 Benedikt Boehm <hollow@gentoo.org>
 #  
@@ -64,28 +64,36 @@ while true; do
        (--overlay)      overlay="${2%/}";;
        (--overlay-host) overlay_host="${2%/}";;
        (--overlay-only) overlay_only=1;;
-       (--)             shift; break;;
+       (--)             test ${#vsomething_opts[@]} -eq 0 && shift; break;;
        (*)              echo $"vesync: internal error; arg=='$1'" >&2; exit 1;;
     esac
     shift
 done
 
+declare -a vserver_names
+
+while [ $# -gt 0 ]; do
+    case "$1" in
+       (--)            shift; break;;
+       (*)             vserver_names=( "${vserver_names[@]}" "$1" );;
+    esac
+    shift
+done
+
 VSOMETHING_TITLE=vesync
 VSOMETHING_PKGMGMT=1
 
 export VSOMETHING_TITLE VSOMETHING_PKGMGMT
 
-test ${#vsomething_opts[@]} -eq 0 || vsomething_opts=( "${vsomething_opts[@]}" -- )
-
 ret=0
 
 test $overlay_only -eq 0 && \
-       $_VSOMETHING "${send_through[@]}" emerge "${vsomething_opts[@]}" --metadata
+       $_VSOMETHING "${send_through[@]}" emerge "${vsomething_opts[@]}" "${vserver_names[@]}" -- --metadata
 
 ret=$?
 
 test -n "$overlay" -a -n "$overlay_host" && \
-       $_VSOMETHING "${send_through[@]}" rsync "${vsomething_opts[@]}" \
+       $_VSOMETHING "${send_through[@]}" rsync "${vsomething_opts[@]}" "${vserver_names[@]}" -- \
        -rtW --progress --delete --delete-after "${overlay_host}/" "${overlay}/"
 
 test $? -eq 0 -a $ret -eq 0