diff options
Diffstat (limited to 'kvmx')
-rwxr-xr-x | kvmx | 33 |
1 files changed, 21 insertions, 12 deletions
@@ -988,18 +988,27 @@ function kvmx_provision { rsync -av --delete -e "$SSH_COMMAND -o Port=$SSH" $provision_rsync_opts --rsync-path "sudo rsync" $ORIG/ 127.0.0.1:$DEST/ if [ ! -z "$provision_rsync" ]; then - ORIG="`echo $provision_rsync | cut -d ' ' -f 1`" - DEST="`echo $provision_rsync | cut -d ' ' -f 2`" - - # Sync custom provisioners - if [ "$ORIG" != "$KVMX_BASE/share/provision/" ] && [ "$DEST" != "/usr/local/share/kvmx/provision/" ]; then - ( - # Go inside the project folder so a relative $ORIG works - cd `dirname $KVMXFILE` &> /dev/null - echo "sudo mkdir -p `dirname $DEST`" | kvmx_ssh - rsync -av -e "$SSH_COMMAND -o Port=$SSH" $provision_rsync_opts --rsync-path "sudo rsync" $ORIG/ 127.0.0.1:$DEST/ - ) - fi + local old_ifs="$IFS" + IFS="," + + for provision_item in $provision_rsync; do + IFS="$old_ifs" + ORIG="`echo $provision_item | cut -d ' ' -f 1`" + DEST="`echo $provision_item | cut -d ' ' -f 2`" + + # Sync custom provisioners + if [ "$ORIG" != "$KVMX_BASE/share/provision/" ] && [ "$DEST" != "/usr/local/share/kvmx/provision/" ]; then + ( + # Go inside the project folder so a relative $ORIG works + cd `dirname $KVMXFILE` &> /dev/null + echo "sudo mkdir -p `dirname $DEST`" | kvmx_ssh + rsync -av -e "$SSH_COMMAND -o Port=$SSH" $provision_rsync_opts --rsync-path "sudo rsync" $ORIG/ 127.0.0.1:$DEST/ + ) + fi + IFS="," + done + + IFS="$old_ifs" fi echo "Running provision command inside the guest..." |