Incorrect start-kafka.sh mounted to global-kafka
[oom.git] / kubernetes / oneclick / deleteAll.bash
1 #!/bin/bash
2
3 . $(dirname "$0")/setenv.bash
4
5 delete_namespace() {
6   _NS=$1-$2
7   kubectl delete namespace $_NS
8 }
9
10 delete_service_account() {
11     kubectl delete clusterrolebinding $1-$2-admin-binding
12     printf "Service account $1-$2-admin-binding deleted.\n\n"
13 }
14
15 delete_registry_key() {
16   kubectl --namespace $1-$2 delete secret ${1}-docker-registry-key
17 }
18
19 delete_app_helm() {
20   helm delete $1-$2 --purge
21 }
22
23 wait_terminate() {
24   printf "Waiting for namespaces termination...\n"
25   while true; do
26     declare -i _STATUS=0
27     for i in ${HELM_APPS[@]}; do
28       kubectl get namespaces $1-$i > /dev/null 2>&1
29       if [ "$?" -eq "0" ]; then
30         _STATUS=1
31         break
32       fi
33     done
34     if [ "$_STATUS" -eq "0" ]; then
35       break
36     fi
37     sleep 2
38   done
39 }
40
41 usage() {
42   cat <<EOF
43 Usage: $0 [PARAMs]
44 -u                  : Display usage
45 -n [NAMESPACE]      : Kubernetes namespace (required)
46 -a [APP]            : Specify a specific ONAP component (default: all)
47                       from the following choices:
48                       sdc, aai ,mso, message-router, robot, vid, aaf, uui
49                       sdnc, portal, policy, appc, multicloud, clamp, consul, vnfsdk
50 -N                  : Do not wait for deletion of namespace and its objects
51 EOF
52 }
53
54 #MAINs
55 NS=
56 INCL_SVC=false
57 APP=
58 WAIT_TERMINATE=true
59
60 while getopts ":n:u:s:a:N" PARAM; do
61   case $PARAM in
62     u)
63       usage
64       exit 1
65       ;;
66     n)
67       NS=${OPTARG}
68       ;;
69     a)
70       APP=${OPTARG}
71       if [[ -z $APP ]]; then
72         usage
73         exit 1
74       fi
75       ;;
76     N)
77       WAIT_TERMINATE=false
78       ;;
79     ?)
80       usage
81       exit
82       ;;
83   esac
84 done
85
86 if [[ -z $NS ]]; then
87   usage
88   exit 1
89 fi
90
91 if [[ ! -z "$APP" ]]; then
92   HELM_APPS=($APP)
93 fi
94
95 printf "\n********** Cleaning up ONAP: ${ONAP_APPS[*]}\n"
96
97
98 for i in ${HELM_APPS[@]}; do
99
100   delete_app_helm $NS $i
101   delete_namespace $NS $i
102   delete_service_account $NS $i
103
104 done
105
106 if $WAIT_TERMINATE; then
107   wait_terminate $NS
108 fi
109
110 printf "\n********** Gone **********\n"