blob: adfe28757e32d5bd24276070e6c3ef9d04597c79 [file] [log] [blame]
#!/bin/bash
################################################################################
# Copyright (c) 2023 Nordix Foundation. #
# Copyright (C) 2024 OpenInfra Foundation Europe. All rights reserved. #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); #
# you may not use this file except in compliance with the License. #
# You may obtain a copy of the License at #
# #
# http://www.apache.org/licenses/LICENSE-2.0 #
# #
# Unless required by applicable law or agreed to in writing, software #
# distributed under the License is distributed on an "AS IS" BASIS, #
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
# See the License for the specific language governing permissions and #
# limitations under the License. #
################################################################################
# This script to undeploy the NONRTRIC
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
echo "** $ROOT_DIR"
COMPONENTS="
a1controller \
a1simulator \
capifcore \
controlpanel \
dmaapadapterservice \
dmaapmediatorservice \
dmeparticipant \
helmmanager \
informationservice \
nonrtricgateway \
orufhrecovery \
policymanagementservice \
ransliceassurance \
rappcatalogueenhancedservice \
rappcatalogueservice \
rappmanager \
servicemanager \
"
RECIPE_NAMESPACE=$(kubectl get cm --all-namespaces | grep nonrtric-recipe | awk '{print $1}')
kubectl get configmap -n $RECIPE_NAMESPACE nonrtric-recipe -o jsonpath='{.data.recipe}' > /tmp/recipe.yaml
if [ ! -s /tmp/recipe.yaml ]; then
echo "NONRTRIC recipe is not found. Are you sure it's deployed successfully?"
exit 0
fi
COMMON_BLOCK=$(cat /tmp/recipe.yaml | awk '/^common:/{getline; while ($0 ~ /^ +.*|^ *$/) {print $0; if (getline == 0) {break}}}')
NAMESPACE_BLOCK=$(cat /tmp/recipe.yaml | awk '/^ namespace:/{getline; while ($0 ~ /^ .*|^ *$/) {print $0; if (getline == 0) {break}}}')
NONRTRIC_NAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *nonrtric:/{print $2}')
RELEASE_PREFIX=$(echo "$COMMON_BLOCK" | awk '/^ *releasePrefix:/{print $2}')
INSTALL_KONG=$(cat /tmp/recipe.yaml | awk '/^ installKong:/{print $2}')
INSTALL_RANPM=$(cat /tmp/recipe.yaml | awk '/^ installRanpm:/{print $2}')
if [ "$INSTALL_KONG" = true ];then
echo "Warning - deleting Kong routes and services for ServiceManager"
SERVICEMANAGER_POD=$(kubectl get pods -o custom-columns=NAME:.metadata.name -l app=nonrtric-servicemanager --no-headers -n ${NONRTRIC_NAMESPACE:-nonrtric})
if [[ -n $SERVICEMANAGER_POD ]]; then
kubectl exec $SERVICEMANAGER_POD -n ${NONRTRIC_NAMESPACE:-nonrtric} -- ./kongclearup
else
echo "Error - Servicemanager pod not found, didn't delete Kong routes and services for ServiceManager"
fi
echo "Uninstalling kongstorage"
helm delete kongstorage -n "${NONRTRIC_NAMESPACE:-nonrtric}"
echo "Uninstalling Kong"
helm delete oran-nonrtric -n ${NONRTRIC_NAMESPACE:-nonrtric}
fi
ROOT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
if [ "$INSTALL_RANPM" = true ];then
echo "Running uninstall-ranpm.sh"
chmod +x ${ROOT_DIR}/../ranpm/install/uninstall-ranpm.sh
${ROOT_DIR}/../ranpm/install/uninstall-ranpm.sh
kubectl delete ns ran
echo "uninstall-ranpm.sh completed"
fi
echo "Undeploying NONRTRIC components [$COMPONENTS]"
IS_HELM3=$(helm version -c --short|grep -e "^v3")
HELM_FLAG=''
if [ $IS_HELM3 ]
then
HELM_FLAG=' -n '${NONRTRIC_NAMESPACE:-nonrtric}
else
HELM_FLAG='--purge'
fi
helm delete ${HELM_FLAG} ${RELEASE_PREFIX}
kubectl delete cm -n ${NONRTRIC_NAMESPACE:-nonrtric} nonrtric-recipe
kubectl delete ns ${NONRTRIC_NAMESPACE:-nonrtric}
kubectl delete ns onap
# Cleanup ChartMuseum
CM_PID_FILE="$ROOT_DIR/CM_PID.txt"
if [ -f $CM_PID_FILE ]; then
echo "Cleaning up ChartMuseum..."
PID=$(cat "$CM_PID_FILE")
echo "Killing ChartMuseum with PID $PID"
kill $PID
rm $CM_PID_FILE
echo "ChartMuseum cleanup completed"
fi