blob: 2fb080eae8da9307d08ba278c09704e96cce78f1 [file] [log] [blame]
#!/bin/bash
################################################################################
# Copyright (c) 2019 AT&T Intellectual Property. #
# Copyright (c) 2019 Nokia. #
# #
# 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. #
################################################################################
COMPONENTS="xapp-onboarder appmgr rtmgr e2mgr e2term a1mediator submgr vespamgr jaegeradapter dbaas infrastructure o1mediator alarmmanager"
RECIPE_NAMESPACE=$(kubectl get cm --all-namespaces | grep ricplt-recipe | awk '{print $1}')
kubectl get configmap -n $RECIPE_NAMESPACE ricplt-recipe -o jsonpath='{.data.recipe}' > /tmp/recipe.yaml
if [ ! -s /tmp/recipe.yaml ]; then
echo "RICPLT recipe is not found. Are you sure the ric platform is 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}}}')
PLTNAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *platform:/{print $2}')
INFRANAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *infra:/{print $2}')
XAPPNAMESPACE=$(echo "$NAMESPACE_BLOCK" | awk '/^ *xapp:/{print $2}')
RELEASE_PREFIX=$(echo "$COMMON_BLOCK" | awk '/^ *releasePrefix:/{print $2}')
IS_HELM3=$(helm version --short|grep -e "^v3")
echo "Undeploying RIC platform components [$COMPONENTS]"
HELM_FLAG=''
if [ $IS_HELM3 ]
then
HELM_FLAG=' -n '${PLTNAMESPACE:-ricplt}
else
HELM_FLAG='--purge'
fi
for component in $COMPONENTS; do
helm delete $HELM_FLAG ${RELEASE_PREFIX}-$component
done
kubectl delete cm -n ${PLTNAMESPACE:-ricplt} ricplt-recipe
kubectl delete ns ${XAPPNAMESPACE:-ricxapp}
kubectl delete ns ${INFRANAMESPACE:-ricinfra}
kubectl delete ns ${PLTNAMESPACE:-ricplt}