diff options
author | Gary Wu <gary.i.wu@huawei.com> | 2018-01-03 11:19:28 -0800 |
---|---|---|
committer | Gary Wu <gary.i.wu@huawei.com> | 2018-01-05 18:14:33 +0000 |
commit | cc10f1c1645ce35626cc36230a4acfc6c6aa7e25 (patch) | |
tree | 523289aac53d1b49f0b048089de6c4cee634ae07 | |
parent | 3512cee24ee66ada4c78c63dd471a6a6609c11e4 (diff) |
ONAP environment teardown script
Change-Id: I27afbc37ec35f374d1c82ada60698a9461627c72
Issue-ID: INT-278
Signed-off-by: Gary Wu <gary.i.wu@huawei.com>
(cherry picked from commit e681bedc94e346a0f7de570bcf17b831755d876d)
-rwxr-xr-x | test/ete/scripts/deploy-onap.sh | 26 | ||||
-rwxr-xr-x | test/ete/scripts/dns-zones/delete-dns-zones.sh | 27 | ||||
-rwxr-xr-x | test/ete/scripts/teardown-onap.sh | 54 |
3 files changed, 82 insertions, 25 deletions
diff --git a/test/ete/scripts/deploy-onap.sh b/test/ete/scripts/deploy-onap.sh index 5c74da7c9..c72de1ce6 100755 --- a/test/ete/scripts/deploy-onap.sh +++ b/test/ete/scripts/deploy-onap.sh @@ -6,31 +6,7 @@ fi source $WORKSPACE/test/ete/scripts/install_openstack_cli.sh -# Delete all existing stacks -STACKS=$(openstack stack list -c "Stack Name" -f value) - -if [ ! -z "${STACKS}" ]; then - echo "Deleting Stacks ${STACKS}" - 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 30 - done - done -else - echo "No existing stacks to delete." -fi - -# miscellaneous cleanup -openstack floating ip delete $(openstack floating ip list -c ID -f value) -openstack port delete $(openstack port list -f value -c ID) -openstack router delete $(openstack router list -f value -c ID) -openstack port delete $(openstack port list -f value -c ID) -openstack router delete $(openstack router list -f value -c ID) -openstack port delete $(openstack port list -f value -c ID) -openstack volume delete $(openstack volume list -f value -c ID) - - +$WORKSPACE/test/ete/scripts/teardown-onap.sh STACK="ete-$(uuidgen | cut -c-8)" echo "New Stack Name: ${STACK}" diff --git a/test/ete/scripts/dns-zones/delete-dns-zones.sh b/test/ete/scripts/dns-zones/delete-dns-zones.sh new file mode 100755 index 000000000..00438b419 --- /dev/null +++ b/test/ete/scripts/dns-zones/delete-dns-zones.sh @@ -0,0 +1,27 @@ +#!/bin/bash -x + +if [ "$#" -ne 1 ]; then + echo "Usage: $0 <project-name>" + exit 1 +fi + +if [ -z "$WORKSPACE" ]; then + export WORKSPACE=`git rev-parse --show-toplevel` +fi + +MULTICLOUD_IP=$($WORKSPACE/test/ete/scripts/get-floating-ip.sh onap-multi-service) + +export MULTICLOUD_PLUGIN_ENDPOINT=http://$MULTICLOUD_IP:9005/api/multicloud-titanium_cloud/v0/pod25_RegionOne + +export TOKEN=$(curl -v -s -H "Content-Type: application/json" -X POST -d '{"auth": {"identity": {"methods": ["password"],"password": {"user": {"name": "demo","password": "onapdemo"}}},"scope": {"project":{"domain":{"name":"Default"},"name": "'$1'" } }}}' $MULTICLOUD_PLUGIN_ENDPOINT/identity/v3/auth/tokens 2>&1 | grep X-Subject-Token | sed "s/^.*: //") + + +ZONES=$(curl -v -s -H "Content-Type: application/json" -H "X-Auth-Token: $TOKEN" -X GET $MULTICLOUD_PLUGIN_ENDPOINT/dns-delegate/v2/zones | jq '.["zones"][] | .name' | tr -d '"' ) + +echo $ZONES + +for ZONENAME in $ZONES; do + echo $ZONENAME; + export ZONEID=$(curl -v -s -H "Content-Type: application/json" -H "X-Auth-Token: $TOKEN" -X GET $MULTICLOUD_PLUGIN_ENDPOINT/dns-delegate/v2/zones?name=$ZONENAME |sed 's/^.*"id":"\([a-zA-Z0-9-]*\)",.*$/\1/') + curl -v -s -H "Content-Type: application/json" -H "X-Auth-Token: $TOKEN" -X DELETE $MULTICLOUD_PLUGIN_ENDPOINT/dns-delegate/v2/zones/$ZONEID +done diff --git a/test/ete/scripts/teardown-onap.sh b/test/ete/scripts/teardown-onap.sh new file mode 100755 index 000000000..eecef876b --- /dev/null +++ b/test/ete/scripts/teardown-onap.sh @@ -0,0 +1,54 @@ +#!/bin/bash -x + +if [ -z "$WORKSPACE" ]; then + export WORKSPACE=`git rev-parse --show-toplevel` +fi + +source $WORKSPACE/test/ete/scripts/install_openstack_cli.sh + +# delete all 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 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 $ZONENAME; + 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 Name -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 + echo "Deleting Stacks ${STACKS}" + 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 |