Merge changes from topic 'RELENG-704'
[releng/builder.git] / jjb / opendaylight-infra-cleanup-stale-stacks.sh
index 6c3289a060ae62a1e19d1e730948bd58dc7bfeb9..340b7d7594d6796e4921f784af6291760742efc3 100644 (file)
@@ -1,10 +1,21 @@
 #!/bin/bash
+# SPDX-License-Identifier: EPL-1.0
+##############################################################################
+# Copyright (c) 2017 The Linux Foundation and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+##############################################################################
+
 virtualenv "/tmp/v/openstack"
 # shellcheck source=/tmp/v/openstack/bin/activate disable=SC1091
 source "/tmp/v/openstack/bin/activate"
 pip install --upgrade pip
 pip install --upgrade python-openstackclient python-heatclient
-pip freeze
+pip install --upgrade pipdeptree
+pipdeptree
 
 #########################
 ## FETCH ACTIVE BUILDS ##
@@ -22,7 +33,7 @@ OS_STACKS=($(openstack stack list \
 ACTIVE_BUILDS=()
 for silo in releng sandbox; do
     JENKINS_URL="https://jenkins.opendaylight.org/$silo//computer/api/json?tree=computer[executors[currentExecutable[url]],oneOffExecutors[currentExecutable[url]]]&xpath=//url&wrapper=builds"
-    wget --no-verbose -O "${silo}_builds.json" "$JENKINS_URL"
+    wget -nv -O "${silo}_builds.json" "$JENKINS_URL"
     sleep 1  # Need to sleep for 1 second otherwise next line causes script to stall
     ACTIVE_BUILDS=(${ACTIVE_BUILDS[@]} $( \
         jq -r '.computer[].executors[].currentExecutable.url' "${silo}_builds.json" \
@@ -47,15 +58,7 @@ for STACK_NAME in "${OS_STACKS[@]}"; do
             ;;
             DELETE_FAILED)
                 echo "Stack delete failed, trying to stack abandon now."
-                # stack abandon does not work on RS, therefore requires acquiring a token
-                # and using http delete method to abondon DELETE_FAILED stacks
-                # Todo: remove the change once RS fixes the issue upstream
-                # openstack stack abandon "$STACK_NAME"
-                STACK_ID=$(openstack stack show -f json -c "id" "$STACK_NAME" | jq -r '."id"')
-                TOKEN=$(openstack token issue -f json -c id | jq -r '.id')
-                curl -si -X DELETE -H "Content-Type: application/json" -H "Accept: application/json"\
-                    -H "x-auth-token: $TOKEN"\
-                    "https://dfw.orchestration.api.rackspacecloud.com/v1/904885/stacks/$STACK_NAME/$STACK_ID/abandon"
+                openstack stack abandon "$STACK_NAME"
                 STACK_SHOW=$(openstack stack show "$STACK_NAME")
                 echo "$STACK_SHOW"
                 continue