Files
cmoa_installer_ansible/installer.sh
ByeonJungHun cbbc194d67 release 3.5.5
2023-11-13 16:33:38 +09:00

82 lines
2.3 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[2KCMOA\nVersion: 3.5.5\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=("CMOA INSTALL" "CMOA PG Patch" "Kubernetes Install (Online Only)");
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
ansible-playbook -i inventory cmoa_install.yaml
elif [ $SELECTED -eq 2 ]
then
ansible-playbook -i inventory cmoa_pgpatch.yaml
elif [ $SELECTED -eq 3 ]
then
ansible-playbook -i inventory cmoa_infra.yaml
fi
}
main