aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGary Wu <gary.i.wu@huawei.com>2018-01-03 11:19:28 -0800
committerGary Wu <gary.i.wu@huawei.com>2018-01-05 18:14:33 +0000
commitcc10f1c1645ce35626cc36230a4acfc6c6aa7e25 (patch)
tree523289aac53d1b49f0b048089de6c4cee634ae07
parent3512cee24ee66ada4c78c63dd471a6a6609c11e4 (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-xtest/ete/scripts/deploy-onap.sh26
-rwxr-xr-xtest/ete/scripts/dns-zones/delete-dns-zones.sh27
-rwxr-xr-xtest/ete/scripts/teardown-onap.sh54
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