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 ([ "${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 [ "${MODE}" == "esxi" ]; then
if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "SYS" ]; then if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "SYS" ]; then
if [ ${MN} -eq 1 ]; then if [ ${MN} -eq 1 ]; then
@@ -543,17 +549,17 @@ HOSTMGMT(){
else else
if [ ${MN} -eq 1 ]; then if [ ${MN} -eq 1 ]; then
echo -e "${idsCL[LightGreen]}PUTTING '${ESXI_HOST}' HOST INTO MAINTENANCE MODE${idsCL[Default]}\n" 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 else
echo -e "${idsCL[LightGreen]}SHUTTING DOWN HOST${idsCL[Default]}\n" echo -e "${idsCL[LightGreen]}SHUTTING DOWN HOST${idsCL[Default]}\n"
SHUTDOWN_SERVER ${HOST} -esxi off SHUTDOWN_SERVER ${ESXI_HOST} -esxi off
fi fi
fi fi
elif [ "${MODE}" == "power" ]; then elif [ "${MODE}" == "power" ]; then
if [ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "OFFSITE" ] || [ "${ESXI_HOST}" == "MAIN" ] || [ "${ESXI_HOST}" == "SYS" ]; 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 HOSTPOWER ${PW_MAIN_ISCSI} on
sleep 60s sleep 60s
fi fi
@@ -563,11 +569,19 @@ HOSTMGMT(){
if [ "${POWER^^}" == "ON" ] && [ "${vhost}" == "${PW_MAIN_ISCSI}" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "MAIN" ]); then if [ "${POWER^^}" == "ON" ] && [ "${vhost}" == "${PW_MAIN_ISCSI}" ] && ([ "${ESXI_HOST}" == "ALL" ] || [ "${ESXI_HOST}" == "MAINSITE" ] || [ "${ESXI_HOST}" == "MAIN" ]); then
tmp='' tmp=''
else 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 fi
done done
else 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
fi fi
echo echo