Better dry-run mode

* Use drbdadm --dry-run instead of echoing command
* Do not check if drbd volume is existant
* Do not run evomaintenance
This commit is contained in:
Victor LABORIE 2018-05-15 12:37:43 +02:00
parent ea4884c1b4
commit f3b8cccbae

View file

@ -168,15 +168,19 @@ cat << EOT >> $tmpResFile
EOT
# Create/Activate the new drbd resources.
dryRun install -m 600 $tmpResFile /etc/drbd.d/${vmName}.res
dryRun scp /etc/drbd.d/${vmName}.res ${slaveKVMIP}:/etc/drbd.d/
dryRun drbdadm create-md "$vmName"
dryRun ssh $slaveKVMIP drbdadm create-md "$vmName"
($doDryRun) && drbdadm -d adjust "$vmName"
($doDryRun) || drbdadm adjust "$vmName"
($doDryRun) && ssh $slaveKVMIP drbdadm -d adjust "$vmName"
($doDryRun) || ssh $slaveKVMIP drbdadm adjust "$vmName"
dryRun drbdadm -- --overwrite-data-of-peer primary "$vmName"
drbdadm="$(command -v drbdadm)"
($doDryRun) && drbdadm="${drbdadm} --dry-run"
($doDryRun) && trap "rm /etc/drbd.d/${vmName}.res && ssh ${slaveKVMIP} rm /etc/drbd.d/${vmName}.res" 0
install -m 600 $tmpResFile /etc/drbd.d/${vmName}.res
scp /etc/drbd.d/${vmName}.res ${slaveKVMIP}:/etc/drbd.d/
${drbdadm} create-md "$vmName"
ssh $slaveKVMIP ${drbdadm} create-md "$vmName"
${drbdadm} adjust "$vmName"
ssh $slaveKVMIP ${drbdadm} adjust "$vmName"
${drbdadm} -- --overwrite-data-of-peer primary "$vmName"
if !($doDryRun); then
sleep 5 && drbd-overview | tail -4
drbdDiskPath="/dev/drbd/by-res/${vmName}/0"
@ -187,6 +191,7 @@ if ! [[ -b "$drbdDiskPath" ]]; then
exit 1
fi
fi
fi
virtHome=""
[ "$volhomeDisk" != "none" ] && virtHome="--disk path=/dev/drbd/by-disk/${volhomeDisk}/${vmName}_home,bus=virtio,io=threads,cache=none,format=raw"
@ -203,6 +208,8 @@ dryRun virt-install --connect=qemu:///system \
--os-variant=none \
--pxe
[ -x /usr/share/scripts/evomaintenance.sh ] && echo "Install VM ${vmName} (add-vm.sh)" | /usr/share/scripts/evomaintenance.sh
if [ -x /usr/share/scripts/evomaintenance.sh ]; then
($doDryRun) || echo "Install VM ${vmName} (add-vm.sh)" | /usr/share/scripts/evomaintenance.sh
fi
echo -e "\e[32mDone! Now you can install your VM with virt-manager.\e[39m"