diff options
author | Alex Yang <yangyang1@zte.com.cn> | 2017-09-11 19:40:00 +0800 |
---|---|---|
committer | Zhijiang Hu <hu.zhijiang@zte.com.cn> | 2017-09-12 11:09:11 +0000 |
commit | 8f655e59dbd5a5ed3ebb7de6e504503c84722fb2 (patch) | |
tree | f0adc6848fb525219c25f13bbbf6f192d1625dbe /ci | |
parent | 95ef00903b04cf2a42d1ab76d6a28686e6db79b2 (diff) |
Eliminate hard code about ipmi info in bash script
Change-Id: I642d130566137dff727b7227658afe6ace9473d6
Signed-off-by: Alex Yang <yangyang1@zte.com.cn>
(cherry picked from commit 94d3957c5aba2db70d06929ac9538280a71c6641)
Diffstat (limited to 'ci')
-rwxr-xr-x | ci/deploy/deploy.sh | 30 |
1 files changed, 26 insertions, 4 deletions
diff --git a/ci/deploy/deploy.sh b/ci/deploy/deploy.sh index 22685e86..b73c80f9 100755 --- a/ci/deploy/deploy.sh +++ b/ci/deploy/deploy.sh @@ -476,6 +476,31 @@ function get_mac_addresses_for_virtual() } +function reboot_baremetal_node() +{ + ips=(`grep ipmi_ip $DHA_CONF | awk '{print $2}' | tr "\n" " " | tr -d "\'"`) + ip_num=${#ips[@]} + users=(`grep ipmi_user $DHA_CONF | awk '{print $2}' | tr "\n" " " | tr -d "\'"`) + user_num=${#users[@]} + passwds=(`grep ipmi_pass $DHA_CONF | awk '{print $2}' | tr "\n" " " | tr -d "\'"`) + pass_num=${#passwds[@]} + + if [ $ip_num -ne $TARGET_HOSTS_NUM ]; then + echo "ERROR: IPMI information should be provided for each node !" + exit 1 + fi + + for ((i=0; i<$ip_num; i++)); do + if [ $TARGET_HOSTS_NUM -eq $user_num ] && [ $TARGET_HOSTS_NUM -eq $pass_num ]; then + ipmitool -I lanplus -H ${ips[$i]} -U ${users[$i]} -P ${passwds[$i]} -R 1 chassis bootdev pxe + ipmitool -I lanplus -H ${ips[$i]} -U ${users[$i]} -P ${passwds[$i]} -R 1 chassis power reset + else + ipmitool -I lanplus -H ${ips[$i]} -R 1 chassis bootdev pxe + ipmitool -I lanplus -H ${ips[$i]} -R 1 chassis power reset + fi + done +} + echo "====== create and find node ======" if [ $IS_BARE == 0 ];then if [ $TARGET_HOSTS_NUM == 1 ];then @@ -498,10 +523,7 @@ if [ $IS_BARE == 0 ];then sleep 20 get_mac_addresses_for_virtual else - for i in $(seq 106 110); do - ipmitool -I lanplus -H 192.168.1.$i -U zteroot -P superuser -R 1 chassis bootdev pxe - ipmitool -I lanplus -H 192.168.1.$i -U zteroot -P superuser -R 1 chassis power reset - done + reboot_baremetal_node fi echo "====== prepare host and pxe ======" |