diff options
author | Munir Ahmad <munir.ahmad@bell.ca> | 2017-12-20 13:09:05 -0500 |
---|---|---|
committer | Alexis de Talhouƫt <alexis.de_talhouet@bell.ca> | 2018-01-04 13:02:23 +0000 |
commit | 4add94b725ffedf935a1e831663ddad773894ec0 (patch) | |
tree | 482abd5953aad250c4a2311109574ae595694030 | |
parent | de049024ceac6dfe48c8e4d06464c419569b61d7 (diff) |
Confirm k8s context with a prompt
Change-Id: I484cbcafb83a6bec93ba1445769d6f9394c94713
Issue-ID: OOM-528
Signed-off-by: Munir Ahmad <munir.ahmad@bell.ca>
-rwxr-xr-x | kubernetes/oneclick/deleteAll.bash | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/kubernetes/oneclick/deleteAll.bash b/kubernetes/oneclick/deleteAll.bash index b41679b061..53f1d1a9cb 100755 --- a/kubernetes/oneclick/deleteAll.bash +++ b/kubernetes/oneclick/deleteAll.bash @@ -43,6 +43,8 @@ usage() { Usage: $0 [PARAMs] -u : Display usage -n [NAMESPACE] : Kubernetes namespace (required) +-c : kubectl context (default: current context) +-y : Skip interactive confirmation (default: no) -a [APP] : Specify a specific ONAP component (default: all) from the following choices: sdc, aai ,mso, message-router, robot, vid, aaf, uui @@ -56,8 +58,10 @@ NS= INCL_SVC=false APP= WAIT_TERMINATE=true +SKIP_INTERACTIVE_CONFIRMATION=no +KUBECTL_CONTEXT= -while getopts ":n:u:s:a:N" PARAM; do +while getopts ":c:n:u:s:a:yN" PARAM; do case $PARAM in u) usage @@ -76,6 +80,12 @@ while getopts ":n:u:s:a:N" PARAM; do N) WAIT_TERMINATE=false ;; + y) + SKIP_INTERACTIVE_CONFIRMATION=yes + ;; + c) + KUBECTL_CONTEXT=${OPTARG} + ;; ?) usage exit @@ -88,6 +98,29 @@ if [[ -z $NS ]]; then exit 1 fi +if [[ "$SKIP_INTERACTIVE_CONFIRMATION" != yes ]]; then + current_kubectl_context=$(kubectl config get-contexts |grep "*" |awk '{print $2}') + if test "$KUBECTL_CONTEXT" != "$current_kubectl_context"; then + printf "Current kubectl context does not match context specified:\x1b[31m $current_kubectl_context\x1b[0m\n" + if [ ! -z "$KUBECTL_CONTEXT" -a "$KUBECTL_CONTEXT" != " " ]; then + read -p "Do you wish to switch context to $KUBECTL_CONTEXT and continue?" yn + case $yn in + [Yy]* ) kubectl config use-context $KUBECTL_CONTEXT;; + * ) printf "Skipping delete...\n"; exit;; + esac + else + printf "You are about to delete deployment from:\x1b[31m $current_kubectl_context\x1b[0m\n" + read -p "To continue enter context name: " response + + if test "$response" != "$current_kubectl_context" + then + printf "Your response does not match current context! Skipping delete ...\n" + exit 1 + fi + fi + fi +fi + if [[ ! -z "$APP" ]]; then HELM_APPS=($APP) fi |