#!/bin/bash # Remove every pxetest-* object: both domains (and their nvram), the # volumes, and the isolated network. Idempotent. Does not touch the # cached ISO / USB image file (delete $PXETEST_CACHE by hand). # Usage: tests/vm/destroy.sh source "$(dirname "$0")/common.sh" for vm in "${ALL_CLIENTS[@]}" "$SERVER_VM"; do dom_exists "$vm" || continue [ "$(dom_state "$vm")" = "shut off" ] || virsh destroy "$vm" >/dev/null virsh undefine "$vm" --nvram >/dev/null log "undefined $vm" done for v in "$SERVER_DISK_VOL" "$USB_VOL" "$CLIENT_DISK_VOL" "$CLIENT2_DISK_VOL" "$CLIENT3_DISK_VOL"; do vol_exists "$v" || continue virsh vol-delete --pool "$POOL" "$v" >/dev/null log "deleted volume $v" done if net_exists "$IMAGING_NET"; then virsh net-destroy "$IMAGING_NET" >/dev/null 2>&1 || true virsh net-undefine "$IMAGING_NET" >/dev/null log "removed network $IMAGING_NET" fi