05eac1cbb737f7641c6e2ff267567c57da06c61c
[it/dep.git] / bin / undeploy-nonrtric
1 #!/bin/bash
2 ################################################################################
3 #   Copyright (c) 2020 Nordix Foundation.                                      #
4 #                                                                              #
5 #   Licensed under the Apache License, Version 2.0 (the "License");            #
6 #   you may not use this file except in compliance with the License.           #
7 #   You may obtain a copy of the License at                                    #
8 #                                                                              #
9 #       http://www.apache.org/licenses/LICENSE-2.0                             #
10 #                                                                              #
11 #   Unless required by applicable law or agreed to in writing, software        #
12 #   distributed under the License is distributed on an "AS IS" BASIS,          #
13 #   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
14 #   See the License for the specific language governing permissions and        #
15 #   limitations under the License.                                             #
16 ################################################################################
17
18 # This script to undeploy the NONRTRIC
19
20
21 COMPONENTS="controlpanel a1controller a1simulator policymanagementservice enrichmentservice rappcatalogueservice nonrtricgateway dmaapadapterservice"
22 RECIPE_NAMESPACE=$(kubectl get cm --all-namespaces | grep nonrtric-recipe | awk '{print $1}')
23 kubectl get configmap  -n $RECIPE_NAMESPACE nonrtric-recipe  -o jsonpath='{.data.recipe}' > /tmp/recipe.yaml
24
25 if [ ! -s /tmp/recipe.yaml ]; then
26     echo "NONRTRIC recipe is not found. Are you sure it's deployed successfully?"
27     exit 0
28 fi
29
30 COMMON_BLOCK=$(cat /tmp/recipe.yaml | awk '/^common:/{getline; while ($0 ~ /^ +.*|^ *$/) {print $0; if (getline == 0) {break}}}')
31 NAMESPACE_BLOCK=$(cat /tmp/recipe.yaml | awk '/^  namespace:/{getline; while ($0 ~ /^    .*|^ *$/) {print $0; if (getline == 0) {break}}}')
32 NONRTRIC_NAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *nonrtric:/{print $2}')
33 RELEASE_PREFIX=$(echo "$COMMON_BLOCK" | awk '/^ *releasePrefix:/{print $2}')
34 INSTALL_KONG=$(cat /tmp/recipe.yaml | awk '/^  installKong:/{print $2}')
35
36 if [ "$INSTALL_KONG" = true ];then
37    echo "Uninstalling Kong"
38    helm delete kong-nonrtric --namespace kong
39 fi
40
41 echo "Undeploying NONRTRIC components [$COMPONENTS]"
42
43 IS_HELM3=$(helm version -c --short|grep -e "^v3")
44 HELM_FLAG=''
45 if [ $IS_HELM3 ]
46 then
47   HELM_FLAG=' -n '${NONRTRIC_NAMESPACE:-nonrtric}
48 else
49   HELM_FLAG='--purge'
50 fi
51
52 helm delete ${HELM_FLAG} ${RELEASE_PREFIX}
53
54 kubectl delete cm -n ${NONRTRIC_NAMESPACE:-nonrtric} nonrtric-recipe
55
56 kubectl delete ns ${NONRTRIC_NAMESPACE:-nonrtric}