X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=kubernetes%2Foneclick%2FdeleteAll.bash;h=b41679b061aa8d32a1a32050d7abef455d6897fd;hb=a6eb9be0e091746c824b169a46242ef0943a2b05;hp=ad7f060d12174fb7b208cbc0a146520bc975560a;hpb=e614826f96105851c1099ecb883327054bcd3f49;p=oom.git diff --git a/kubernetes/oneclick/deleteAll.bash b/kubernetes/oneclick/deleteAll.bash index ad7f060d12..b41679b061 100755 --- a/kubernetes/oneclick/deleteAll.bash +++ b/kubernetes/oneclick/deleteAll.bash @@ -5,23 +5,37 @@ delete_namespace() { _NS=$1-$2 kubectl delete namespace $_NS - printf "Waiting for namespace $_NS termination...\n" - while kubectl get namespaces $_NS > /dev/null 2>&1; do - sleep 2 - done - printf "Namespace $_NS deleted.\n\n" } -delete_registry_key() { - kubectl --namespace $1-$2 delete secret onap-docker-registry-key +delete_service_account() { + kubectl delete clusterrolebinding $1-$2-admin-binding + printf "Service account $1-$2-admin-binding deleted.\n\n" } -delete_service() { - kubectl --namespace $1-$2 delete -f ../$2/all-services.yaml +delete_registry_key() { + kubectl --namespace $1-$2 delete secret ${1}-docker-registry-key } delete_app_helm() { - helm delete $1 --purge + helm delete $1-$2 --purge +} + +wait_terminate() { + printf "Waiting for namespaces termination...\n" + while true; do + declare -i _STATUS=0 + for i in ${HELM_APPS[@]}; do + kubectl get namespaces $1-$i > /dev/null 2>&1 + if [ "$?" -eq "0" ]; then + _STATUS=1 + break + fi + done + if [ "$_STATUS" -eq "0" ]; then + break + fi + sleep 2 + done } usage() { @@ -29,11 +43,11 @@ usage() { Usage: $0 [PARAMs] -u : Display usage -n [NAMESPACE] : Kubernetes namespace (required) --s true : Include services (default: false) -a [APP] : Specify a specific ONAP component (default: all) from the following choices: - sdc, aai ,mso, message-router, robot, - vid, sdnc, portal, policy, appc + sdc, aai ,mso, message-router, robot, vid, aaf, uui + sdnc, portal, policy, appc, multicloud, clamp, consul, vnfsdk +-N : Do not wait for deletion of namespace and its objects EOF } @@ -41,8 +55,9 @@ EOF NS= INCL_SVC=false APP= +WAIT_TERMINATE=true -while getopts ":n:u:s:a:" PARAM; do +while getopts ":n:u:s:a:N" PARAM; do case $PARAM in u) usage @@ -51,9 +66,6 @@ while getopts ":n:u:s:a:" PARAM; do n) NS=${OPTARG} ;; - s) - INCL_SVC=${OPTARG} - ;; a) APP=${OPTARG} if [[ -z $APP ]]; then @@ -61,6 +73,9 @@ while getopts ":n:u:s:a:" PARAM; do exit 1 fi ;; + N) + WAIT_TERMINATE=false + ;; ?) usage exit @@ -74,30 +89,24 @@ if [[ -z $NS ]]; then fi if [[ ! -z "$APP" ]]; then - ONAP_APPS=($APP) + HELM_APPS=($APP) fi printf "\n********** Cleaning up ONAP: ${ONAP_APPS[*]}\n" -for i in ${ONAP_APPS[@]}; do - - # delete the deployments - /bin/bash $i.sh $NS $i 'delete' - - if [[ "$INCL_SVC" == true ]]; then - printf "\nDeleting services **********\n" - delete_service $NS $i - delete_namespace $NS $i - fi - -done - for i in ${HELM_APPS[@]}; do - delete_app_helm $i + delete_app_helm $NS $i delete_namespace $NS $i + delete_service_account $NS $i done +delete_app_helm $NS "config" +kubectl delete namespace $NS + +if $WAIT_TERMINATE; then + wait_terminate $NS +fi printf "\n********** Gone **********\n"