X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=ci%2Fclean.sh;h=4cf6b64a7f4c960c335ceae4e36561851e1c083a;hb=97207a12fcc28b13c49674c098a7aba7532e9b87;hp=492b0dc24ce976448ab26f6af6e21506dcf1cba9;hpb=3f256fe8fdb4d37387314ab4657b08b7ade364cf;p=apex.git diff --git a/ci/clean.sh b/ci/clean.sh index 492b0dc2..4cf6b64a 100755 --- a/ci/clean.sh +++ b/ci/clean.sh @@ -1,31 +1,72 @@ #!/usr/bin/env bash +############################################################################## +# Copyright (c) 2015 Tim Rozet (Red Hat), Dan Radez (Red Hat) and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## #Clean script to uninstall provisioning server for Apex #author: Dan Radez (dradez@redhat.com) -# +#author: Tim Rozet (trozet@redhat.com) + +# Use default if no param passed +CONFIG=${CONFIG:-'/var/opt/opnfv'} +RESOURCES=${RESOURCES:-"$CONFIG/images"} +LIB=${LIB:-"$CONFIG/lib"} + +##LIBRARIES +if ! source $LIB/common-functions.sh; then + echo "Failed to source $LIB/common-functions.sh" + exit 1 +fi + vm_index=4 +ovs_bridges="br-admin br-private br-public br-storage" +OPNFV_NETWORK_TYPES="admin_network private_network public_network storage_network api_network" -# Clean off instack VM -virsh destroy instack 2> /dev/null || echo -n '' -virsh undefine instack --remove-all-storage 2> /dev/null || echo -n '' -virsh vol-delete instack.qcow2 default 2> /dev/null -rm -f /var/lib/libvirt/images/instack.qcow2 2> /dev/null +# Clean off instack/undercloud VM +for vm in instack undercloud; do + virsh destroy $vm 2> /dev/null | xargs echo -n + virsh undefine $vm 2> /dev/null | xargs echo -n + /usr/bin/touch /var/lib/libvirt/images/${vm}.qcow2 + virsh vol-delete ${vm}.qcow2 --pool default 2> /dev/null | xargs echo -n + rm -f /var/lib/libvirt/images/${vm}.qcow2 2> /dev/null +done # Clean off baremetal VMs in case they exist for i in $(seq 0 $vm_index); do - virsh destroy baremetalbrbm_brbm1_$i 2> /dev/null || echo -n '' - virsh undefine baremetalbrbm_brbm1_$i --remove-all-storage 2> /dev/null || echo -n '' - virsh vol-delete baremetalbrbm_brbm1_${i}.qcow2 default 2> /dev/null - rm -f /var/lib/libvirt/images/baremetalbrbm_brbm1_${i}.qcow2 2> /dev/null + virsh destroy baremetal$i 2> /dev/null | xargs echo -n + virsh undefine baremetal$i 2> /dev/null | xargs echo -n + /usr/bin/touch /var/lib/libvirt/images/baremetal${i}.qcow2 + virsh vol-delete baremetal${i}.qcow2 --pool default 2> /dev/null | xargs echo -n + rm -f /var/lib/libvirt/images/baremetal${i}.qcow2 2> /dev/null done -# Clean off brbm bridges -virsh net-destroy brbm 2> /dev/null -virsh net-undefine brbm 2> /dev/null -vs-vsctl del-br brbm 2> /dev/null +for network in ${OPNFV_NETWORK_TYPES}; do + virsh net-destroy ${network} 2> /dev/null + virsh net-undefine ${network} 2> /dev/null +done + +# Clean off created bridges +for bridge in ${ovs_bridges}; do + if detach_interface_from_ovs ${bridge} 2> /dev/null; then + ovs-vsctl del-br ${bridge} 2> /dev/null + rm -f /etc/sysconfig/network-scripts/ifcfg-${bridge} + fi +done + +# clean pub keys from root's auth keys +sed -i '/stack@undercloud.localdomain/d' /root/.ssh/authorized_keys +sed -i '/virtual-power-key/d' /root/.ssh/authorized_keys + + +# force storage cleanup +virsh pool-refresh default -virsh net-destroy brbm1 2> /dev/null -virsh net-undefine brbm1 2> /dev/null -vs-vsctl del-br brbm1 2> /dev/null +# remove temporary files +rm -f /tmp/network-environment.yaml echo "Cleanup Completed"