#!/bin/bash export TERM=linux BGRN='\033[1;92m' BGRY='\033[1;30m' BBLU='\033[1;34m' BRED='\033[1;91m' BWHI='\033[1;97m' CBLA='\033[?16;0;30c' # Hide blinking cursor DFLT='\033[0m' # Reset colour LCLR='\033[K' # Clear to end of line PRST='\033[0;0H' # Reset cursor position FQDN='{{ _template.metacluster.fqdn }}' IPADDRESS='{{ _template.metacluster.vip }}' declare -A COMPONENTS {% for component in _template.metacluster.components %} COMPONENTS["{{ component.name }}\t({{ component.url }})"]="{{ component.healthcheck }}" {% endfor %} I=0 while /bin/true; do if [[ $I -gt 59 ]]; then clear > /dev/tty1 I=0 else I=$(( $I + 1 )) fi echo -e "${PRST}" > /dev/tty1 echo -e "\n\n\t${DFLT}To manage this appliance, please connect to one of the following:${LCLR}\n" > /dev/tty1 for c in $( echo "${!COMPONENTS[@]}" | tr ' ' $'\n' | sort); do STATUS=$(curl -kLs "${COMPONENTS[${c}]}" -o /dev/null -w '%{http_code}') if [[ "${STATUS}" -eq "200" ]]; then echo -e "\t [${BGRN}+${DFLT}] ${BBLU}${c}${DFLT}${LCLR}" > /dev/tty1 else echo -e "\t [${BRED}-${DFLT}] ${BBLU}${c}${DFLT}${LCLR}" > /dev/tty1 fi done echo -e "\n\t${BGRY}Note that your DNS zone ${DFLT}must have${BGRY} respective records defined,\n\teach pointing to: ${DFLT}${IPADDRESS}${LCLR}" > /dev/tty1 echo -e "${CBLA}" > /dev/tty1 sleep 1 done