kubernetes context selecter add

This commit is contained in:
ByeonJungHun
2023-11-10 16:31:37 +09:00
parent aefc6123f7
commit fa37cc992c
2 changed files with 88 additions and 0 deletions

87
context.sh Executable file
View File

@@ -0,0 +1,87 @@
#!/bin/bash
clear
ESC=`printf "\033"`;
input_key() {
read -s -n3 INPUT;
echo $INPUT;
}
check_selected() {
if [ $1 = $2 ];
then echo " => "
else echo " "
fi
}
select_menu() {
SELECTED=1;
INPUT="";
MIN_MENU=1;
MAX_MENU=$#;
while true;
do
for (( i=1; i<=$#; i++ ))
do
printf "$ESC[2K$(check_selected $i $SELECTED) $i. ${!i}\n";
done
printf "\n$ESC[2KKubernetes Cluster Select\ninfra,cmoamgmt,saasmgmt,dsk-dev,dsk-prod\n\n";
INPUT=$(input_key);
if [[ $INPUT = "" ]];
then break;
fi
if [[ $INPUT = $ESC[A ]];
then SELECTED=$(expr $SELECTED - 1);
elif [[ $INPUT = $ESC[B ]];
then SELECTED=$(expr $SELECTED + 1);
fi
if [[ $SELECTED -lt $MIN_MENU ]];
then SELECTED=${MIN_MENU};
elif [[ $SELECTED -gt $MAX_MENU ]];
then SELECTED=${MAX_MENU};
fi
printf "$ESC[$(expr $# + 3)A";
done
return `expr ${SELECTED} - 1`;
}
select_test() {
arr_params=("INFRA-CLUSTER" "CMOAMGMT-CLUSTER" "SAASMGMT-CLUSTER" "DSK-DEV-CLUSTER" "DSK-PROD-CLUSTER");
echo -e "\n";
echo " __ __ ____ _____ ______ __ __ ";
echo " / //_/ ( __ ) / ___/ / ____/ / / __ __ _____ / /_ ___ _____ ";
echo " / ,< / __ | \__ \ / / / / / / / / / ___/ / __/ / _ \ / ___/ ";
echo " / /| | / /_/ / ___/ / / /___ / / / /_/ / (__ ) / /_ / __/ / / ";
echo " /_/ |_| \____/ /____/ \____/ /_/ \__,_/ /____/ \__/ \___/ /_/ ";
echo -e "\n";
select_menu "${arr_params[@]}";
local SELECTED=$?;
SELECTED_MODE=${arr_params[${SELECTED}]};
}
main() {
select_test;
if [ $SELECTED -eq 1 ]
then
kubectl config use-context infra
elif [ $SELECTED -eq 2 ]
then
kubectl config use-context cmoamgmt
elif [ $SELECTED -eq 3 ]
then
kubectl config use-context saasmgmt
elif [ $SELECTED -eq 4 ]
then
kubectl config use-context dsk-dev
elif [ $SELECTED -eq 5 ]
then
kubectl config use-context dsk-prod
fi
}
main