test ${#WAIT_FOR[@]} -gt 0 && wait ${WAIT_FOR[@]}
+ WAIT_FOR=()
+
for host in ${!COLLECT_OPTIONS[@]}
do
eval HOSTLOGIN=root@\$ipv4_${host}
- scp $SSHCONF -q $HOSTLOGIN:${GUEST_OUTPUT_DIR}/* $TESTRESULTDIR/
+ ssh $SSHCONF $HOSTLOGIN "tar -cf - -C ${GUEST_OUTPUT_DIR} ." | tar -xf - -C $TESTRESULTDIR/ &
+ WAIT_FOR+=($!)
done
+
+ test ${#WAIT_FOR[@]} -gt 0 && wait ${WAIT_FOR[@]}
+
chmod a+r $TESTRESULTDIR/*
##########################################################################
source $TESTDIR/test.conf
##########################################################################
-# copy test specific configurations to uml hosts
+# copy test specific configurations to hosts
#
+WAIT_FOR=()
+
if [ -d $TESTDIR/hosts ]
then
for host in `ls $TESTDIR/hosts`
do
eval HOSTLOGIN=root@\$ipv4_${host}
- scp $SSHCONF -r $TESTDIR/hosts/$host/etc $HOSTLOGIN:/ > /dev/null 2>&1
+ tar -chf - -C $TESTDIR/hosts/$host etc | ssh $SSHCONF $HOSTLOGIN 'tar --overwrite -xhmf - -C /' &
+ WAIT_FOR+=($!)
done
+ wait ${WAIT_FOR[@]}
fi
. $TESTSDIR/$testname/test.conf
+# load files in parallel
+WAIT_FOR=()
+
if [ -d $TESTSDIR/${testname}/hosts ]
then
for host in `ls $TESTSDIR/${testname}/hosts`
do
eval HOSTLOGIN="root@`echo $HOSTNAMEIPV4 | sed -n -e "s/^.*${host},//gp" | awk -F, '{ print $1 }' | awk '{ print $1 }'`"
- scp $SSHCONF -r $HOSTCONFIGDIR/default/etc $HOSTCONFIGDIR/${host}/etc $HOSTLOGIN:/ >/dev/null 2>&1
+ tar -cf - -C $HOSTCONFIGDIR/default etc -C ../${host} etc | ssh $SSHCONF $HOSTLOGIN 'tar --overwrite -xhmf - -C /' &
+ WAIT_FOR+=($!)
done
+ wait ${WAIT_FOR[@]}
fi