#!/bin/bash # Author: Aaron Hicks aaron.hicks@niwa.co.nz # For the National Institute for Water and Atmospheric Research (NIWA) 2024 while getopts ':dn' flag do case "${flag}" in 'd') # Debug mode DEBUG=true [ $DEBUG=true ] && echo 'Debug mode' ;; 'n') # Do nothing NOOP=true [ $DEBUG=true ] && echo 'No operations mode, will do nothing' ;; '?') echo "INVALID OPTION -- ${OPTARG}" >&2 exit 1 ;; ':') echo "MISSING ARGUMENT for option -- ${OPTARG}" >&2 exit 1 ;; *) echo "UNIMPLEMENTED OPTION -- ${OPTKEY}" >&2 exit 1 ;; esac done /sbin/ipactl status 2>&1 | grep ipa-otpd | grep RUNNING > /dev/null if [ $? -eq 0 ]; then [ $DEBUG ] && echo Test passed [ -z ${NOOP} ] && [ ${DEBUG} ] && echo Do Something [ ${NOOP} ] && [ ${DEBUG} ] && echo Do Nothing else [ ${DEBUG} ] && echo Test failed if [ -z ${NOOP} ]; then [ ${DEBUG} ] && echo Restart IPA Services RESULT=$(/sbin/ipactl restart 2>&1) if [ $? -eq 0 ]; then [ ${DEBUG} ] && echo IPA Services Restarted logger "Check IPA Script: Services Restarted" else logger -s "Check IPA Script: Restart Failed!\n${RESULT}" exit 1 fi else echo No operations mode, IPA services not restarted fi fi