diff options
Diffstat (limited to 'kickstart/ipmi.sh')
-rwxr-xr-x | kickstart/ipmi.sh | 157 |
1 files changed, 0 insertions, 157 deletions
diff --git a/kickstart/ipmi.sh b/kickstart/ipmi.sh deleted file mode 100755 index 4571fb0..0000000 --- a/kickstart/ipmi.sh +++ /dev/null @@ -1,157 +0,0 @@ -user="ADMIN" -pass='$ipepdv$' -sleep=0.5 - -function smipmi_cmd { - echo "- Running: SMCIPMITool " - echo "$@" - /opt/smcipmi/SMCIPMITool "$@" -} - -function smipmi { - host=$1 - shift - smipmi_cmd $host ADMIN '$ipepdv$' "$@" -} - - -function ipmi_cmd { - echo -n "- Running: ipmitool " - echo "$@" - /usr/sbin/ipmitool "$@" -} - -function ipmi { - host=$1 - shift - ipmi_cmd -H $host -U ADMIN -P '$ipepdv$' "$@" - -} - -function configure { - host=$1 - - ipmi $host chassis bootdev disk persistent cons_redirect=enable verbose=default - sleep 0.5 -} - -function install { - host=$1 - -# Requires license -# smipmi $host wsiso mount 192.168.26.134 /images/centos74-ands.iso - - ipmi $host power off - sleep 10 - ipmi $host chassis bootdev cdrom - sleep $sleep - ipmi $host power on -} - -function boot { - host=$1 - - configure $host - ipmi $host power on - sleep $sleep -} - -function reboot { - host=$1 - - ipmi $host power off - sleep 10 - ipmi $host power on - sleep $sleep -} - -function bios { - host=$1 - - ipmi $host power off - sleep 10 - ipmi $host chassis bootdev bios - sleep $sleep - ipmi $host power on -} - - - -function status { - host=$1 - - ipmi $host power status | grep "off" &> /dev/null - if [ $? -ne 0 ]; then echo 1; else echo 0; fi -} - -function wait_off { - host=$1 - - on=1 - while [ 1 ]; do - on=$(status $host) - [ "$on" -eq 0 ] && break - echo " - $host still running..." - sleep 5 - done -} - -function cmd { - ipmi "$@" -} - - -if [[ "$1" =~ ^[0-9\-]+$ ]]; then - IFS='-' read -ra range <<< "$1" - - if [ -n "${range[1]}" ]; then - servers=$(seq ${range[0]} ${range[1]}) - else - servers=$(seq ${range[0]} ${range[0]}) - fi - shift -else - servers=$(seq 1 3) -fi -iip=$(for i in $servers ; do echo "192.168.26.4$i" ; done) - -shift=1 -if [ -z "$1" ]; then - echo "$0 [#-#] <config|install|reboot|boot|wait>" - echo "$0 [#] <cmd>" - exit -elif [[ "$1" =~ config ]]; then - action="configure" -elif [[ "$1" =~ install ]]; then - action="install" -elif [[ "$1" =~ reboot ]]; then - action="reboot" -elif [[ "$1" =~ boot ]]; then - action="boot" -elif [[ "$1" =~ bios ]]; then - action="bios" -elif [[ "$1" =~ status ]]; then - action="status" -elif [[ "$1" =~ wait ]]; then - action="wait_off" -else - shift=0 - action="cmd" -fi - -if [ $shift -eq 1 ]; then - shift -fi - -for ip in $iip; do - eval "$action" "$ip" "$@" -done - -if [ $action = "install" ]; then - sleep 30 - for ip in $iip; do - wait_off "$ip" "$@" - configure "$ip" "$@" -# boot "$iip" "$@" - done -fi |