87 lines
2.1 KiB
Bash
Executable File
87 lines
2.1 KiB
Bash
Executable File
#!/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\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 |