Zhe Huang | 38dc857 | 2019-12-08 00:01:26 -0500 | [diff] [blame] | 1 | #!/bin/bash |
| 2 | ################################################################################ |
| 3 | # Copyright (c) 2019 AT&T Intellectual Property. # |
| 4 | # Copyright (c) 2019 Nokia. # |
| 5 | # # |
| 6 | # Licensed under the Apache License, Version 2.0 (the "License"); # |
| 7 | # you may not use this file except in compliance with the License. # |
| 8 | # You may obtain a copy of the License at # |
| 9 | # # |
| 10 | # http://www.apache.org/licenses/LICENSE-2.0 # |
| 11 | # # |
| 12 | # Unless required by applicable law or agreed to in writing, software # |
| 13 | # distributed under the License is distributed on an "AS IS" BASIS, # |
| 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # |
| 15 | # See the License for the specific language governing permissions and # |
| 16 | # limitations under the License. # |
| 17 | ################################################################################ |
| 18 | |
vipin | e38909d | 2020-12-21 10:35:07 +0000 | [diff] [blame] | 19 | COMPONENTS="xapp-onboarder appmgr rtmgr e2mgr e2term a1mediator submgr vespamgr jaegeradapter dbaas infrastructure o1mediator alarmmanager" |
Zhe Huang | 38dc857 | 2019-12-08 00:01:26 -0500 | [diff] [blame] | 20 | RECIPE_NAMESPACE=$(kubectl get cm --all-namespaces | grep ricplt-recipe | awk '{print $1}') |
| 21 | kubectl get configmap -n $RECIPE_NAMESPACE ricplt-recipe -o jsonpath='{.data.recipe}' > /tmp/recipe.yaml |
| 22 | |
| 23 | if [ ! -s /tmp/recipe.yaml ]; then |
| 24 | echo "RICPLT recipe is not found. Are you sure the ric platform is deployed successfully?" |
| 25 | exit 0 |
| 26 | fi |
| 27 | |
| 28 | COMMON_BLOCK=$(cat /tmp/recipe.yaml | awk '/^common:/{getline; while ($0 ~ /^ +.*|^ *$/) {print $0; if (getline == 0) {break}}}') |
| 29 | NAMESPACE_BLOCK=$(cat /tmp/recipe.yaml | awk '/^ namespace:/{getline; while ($0 ~ /^ .*|^ *$/) {print $0; if (getline == 0) {break}}}') |
| 30 | PLTNAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *platform:/{print $2}') |
| 31 | INFRANAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *infra:/{print $2}') |
| 32 | XAPPNAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *xapp:/{print $2}') |
| 33 | RELEASE_PREFIX=$(echo "$COMMON_BLOCK" | awk '/^ *releasePrefix:/{print $2}') |
| 34 | |
Alok Bhatt | f947fc8 | 2020-11-11 04:32:33 +0000 | [diff] [blame] | 35 | IS_HELM3=$(helm version --short|grep -e "^v3") |
Zhe Huang | 38dc857 | 2019-12-08 00:01:26 -0500 | [diff] [blame] | 36 | |
| 37 | echo "Undeploying RIC platform components [$COMPONENTS]" |
| 38 | |
| 39 | |
Alok Bhatt | f947fc8 | 2020-11-11 04:32:33 +0000 | [diff] [blame] | 40 | HELM_FLAG='' |
| 41 | if [ $IS_HELM3 ] |
| 42 | then |
| 43 | HELM_FLAG=' -n '${PLTNAMESPACE:-ricplt} |
| 44 | else |
| 45 | HELM_FLAG='--purge' |
| 46 | fi |
| 47 | |
| 48 | |
Zhe Huang | 38dc857 | 2019-12-08 00:01:26 -0500 | [diff] [blame] | 49 | for component in $COMPONENTS; do |
Alok Bhatt | f947fc8 | 2020-11-11 04:32:33 +0000 | [diff] [blame] | 50 | helm delete $HELM_FLAG ${RELEASE_PREFIX}-$component |
Zhe Huang | 38dc857 | 2019-12-08 00:01:26 -0500 | [diff] [blame] | 51 | done |
| 52 | |
| 53 | kubectl delete cm -n ${PLTNAMESPACE:-ricplt} ricplt-recipe |
| 54 | |
| 55 | kubectl delete ns ${XAPPNAMESPACE:-ricxapp} |
| 56 | kubectl delete ns ${INFRANAMESPACE:-ricinfra} |
| 57 | kubectl delete ns ${PLTNAMESPACE:-ricplt} |