Update powerwall.sh

This commit is contained in:
2023-12-20 08:14:03 -06:00
parent ec6ff33144
commit ccd06260e4

View File

@@ -530,6 +530,12 @@ HOSTMGMT(){
([ "${HOST}" == "" ] || ([ "${POWER}" == "" ] && [ "${ESXI}" == "" ])) && echo -e "Invalid command arguments\n" && exit 1
if [ "${POWER^^}" == "OFF" ] || [ "${ESXI^^}" == "OFF" ]; then
read -n 1 -p "Are you sure you wish to power down '${ESXI_HOST}' ? (y/N): " choice
[ "${choice^^}" != "Y" ] && exit 0
fi
if [ "${MODE}" == "esxi" ]; then
if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "SYS" ]; then
if [ ${MN} -eq 1 ]; then
@@ -543,17 +549,17 @@ HOSTMGMT(){
else
if [ ${MN} -eq 1 ]; then
echo -e "${idsCL[LightGreen]}PUTTING '${ESXI_HOST}' HOST INTO MAINTENANCE MODE${idsCL[Default]}\n"
SHUTDOWN_SERVER ${HOST} -esxi maintenance
SHUTDOWN_SERVER ${ESXI_HOST} -esxi maintenance
else
echo -e "${idsCL[LightGreen]}SHUTTING DOWN HOST${idsCL[Default]}\n"
SHUTDOWN_SERVER ${HOST} -esxi off
SHUTDOWN_SERVER ${ESXI_HOST} -esxi off
fi
fi
elif [ "${MODE}" == "power" ]; then
if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "SYS" ]; then
if [ "${POWER^^}" == "ON" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "MAIN" ]); then
if [ "${POWER^^}" == "ON" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "MAIN" ]) && [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${PW_MAIN_ISCSI}]}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power status | grep 'Power is on')" == "" ]; then
HOSTPOWER ${PW_MAIN_ISCSI} on
sleep 60s
fi
@@ -563,11 +569,19 @@ HOSTMGMT(){
if [ "${POWER^^}" == "ON" ] && [ "${vhost}" == "${PW_MAIN_ISCSI}" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "MAIN" ]); then
tmp=''
else
HOSTPOWER ${vhost} ${POWER}
if [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${vhost}]}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power status | grep 'Power is on')" == "" ]; then
HOSTPOWER ${vhost} ${POWER}
else
echo -e "\n${idsCL[LightCyan]}Host is already Powered ON${idsCL[Default]}"
fi
fi
done
else
HOSTPOWER ${HOST} ${POWER}
if [ "$(ipmitool -I lanplus -H ${PW_HOST_IDRACS[${PW_ESXI_HOST_NAMES[${ESXI_HOST}]}]} -U ${PW_ESXI_USER} -P "${PW_ESXI_PASS}" chassis power status | grep 'Power is on')" == "" ]; then
HOSTPOWER ${ESXI_HOST} ${POWER}
else
echo -e "\n${idsCL[LightCyan]}Host is already Powered ON${idsCL[Default]}"
fi
fi
fi
echo