| #!/bin/bash -x |
| |
| if [ -z "$WORKSPACE" ]; then |
| export WORKSPACE=`git rev-parse --show-toplevel` |
| fi |
| |
| source $WORKSPACE/test/ete/scripts/install_openstack_cli.sh |
| |
| # skip use of multi-vim APIs for now |
| # delete all Proxy Designate DNS records; do this first since we rely on multi-vim for this |
| # $WORKSPACE/test/ete/scripts/dns-zones/delete-dns-zones.sh $OS_PROJECT_NAME |
| # sleep 1 |
| |
| # delete all Desigate DNS zones belonging to this project |
| ZONES=$(openstack zone list -c "id" -f value) |
| for ZONE in ${ZONES}; do |
| ZONE_PROJECT_ID=$(openstack zone show $ZONE -f json | jq -r '.project_id') |
| if [ "$OS_PROJECT_ID" == "$ZONE_PROJECT_ID" ]; then |
| openstack zone delete $ZONE |
| fi |
| done |
| |
| # delete all instances |
| openstack server delete $(openstack server list -c ID -f value) |
| sleep 1 |
| |
| # miscellaneous cleanup |
| openstack floating ip delete $(openstack floating ip list -c ID -f value) |
| sleep 1 |
| |
| ROUTERS=$(openstack router list -c ID -f value) |
| echo $ROUTERS |
| for ROUTER in $ROUTERS; do |
| echo $ROUTER; |
| PORTS=$(openstack router show $ROUTER -c "interfaces_info" -f "value" | jq -r '.[].port_id') |
| for PORT in $PORTS; do |
| openstack router remove port $ROUTER $PORT |
| done |
| openstack router delete $ROUTER |
| done |
| |
| openstack port delete $(openstack port list -f value -c ID) |
| openstack volume delete $(openstack volume list -f value -c ID) |
| |
| # delete all except "default" security group |
| SECURITY_GROUPS=$(openstack security group list -c ID -f value | grep -v default) |
| openstack security group delete $SECURITY_GROUPS |
| sleep 1 |
| |
| |
| # Delete all existing stacks |
| STACKS=$(openstack stack list -c "Stack Name" -f value) |
| |
| if [ ! -z "${STACKS}" ]; then |
| openstack stack delete -y $STACKS |
| for STACK in ${STACKS}; do |
| until [ "DELETE_IN_PROGRESS" != "$(openstack stack show -c stack_status -f value $STACK)" ]; do |
| sleep 2 |
| done |
| done |
| else |
| echo "No existing stacks to delete." |
| fi |