From 0fc6010bcbd41e86372ad27e9e36877af18f994e Mon Sep 17 00:00:00 2001 From: Silvio Rhatto Date: Fri, 10 Mar 2017 00:03:58 -0300 Subject: Full provisioning --- kvmx | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) (limited to 'kvmx') diff --git a/kvmx b/kvmx index 9cec362..5d555dc 100755 --- a/kvmx +++ b/kvmx @@ -10,6 +10,9 @@ ACTION="$1" VM="$2" GLOBAL_USER_CONFIG_FOLDER="$HOME/.config/kvmx" +# Alias to be used in config files +KVMX_BASE="$DIRNAME" + # Run spice client function kvmx_spice { # https://lists.freedesktop.org/archives/spice-devel/2013-September/014643.html @@ -162,7 +165,7 @@ function kvmx_rsync { ORIG="$3" DEST="$4" SSH="`cat $SSHFILE`" - rsync -av "$SSH_COMMAND -p $SSH" $ORIG/ $SSH_LOGIN@127.0.0.1:$DEST/ + rsync -av -e "$SSH_COMMAND -o Port=$SSH" --rsync-path "sudo rsync" $ORIG/ $SSH_LOGIN@127.0.0.1:$DEST/ } # List guests @@ -347,12 +350,21 @@ function kvmx_provision { exit 1 fi - if [ -z "$provision_script" ]; then - echo "$BASENAME: error: parameter provision_script is not configured for $VM." + if [ -z "$provision_command" ]; then + echo "$BASENAME: error: parameter provision_command is not configured for $VM." exit 1 fi - echo "sudo $provision_script" | kvmx_ssh + if [ ! -z "$provision_rsync" ]; then + SSH="`cat $SSHFILE`" + ORIG="`echo $provision_rsync | cut -d ' ' -f 1`" + DEST="`echo $provision_rsync | cut -d ' ' -f 2`" + + echo "sudo mkdir -p `dirname $DEST`" | kvmx_ssh + rsync -av -e "$SSH_COMMAND -o Port=$SSH" --rsync-path "sudo rsync" $ORIG/ $SSH_LOGIN@127.0.0.1:$DEST/ + fi + + echo "sudo $provision_command" | kvmx_ssh } # Print guest image file name -- cgit v1.2.3