work_sript/01.stress_script/inband_dc_cycle.sh
Missing f0e07bf153 Modify ( file strcutur)
重新归档文件夹
2024-07-15 11:32:23 +08:00

70 lines
1.7 KiB
Bash

#!/bin/bash
#### About this script
# Brief : This script is used for inband dc_cyle
# Input Params : 1.DC cycle times
# Example : ./inband_dc_cycle.sh 500 &
# Tips : if want to check anything before cpu power cycle,
# put code into function pre_check(Line:34)
# ----------------------------------------------------
# Varible Defination
# ----------------------------------------------------
aim_cnt=$1
PARAM_NUM="1"
LOG_FILE="inband_dc_cycle.log"
LOCAL_CNT_FILE="count.txt"
# ----------------------------------------------------
# Function Defination
# ----------------------------------------------------
print_usage(){
echo ">>>> Script Usage - inband_dc_cycle.sh"
echo "Format: ./inband_dc_cycle.sh [cnt] &"
}
is_param_legal(){
if [ $# -ne $PARAM_NUM ];then
print_usage
exit 0
fi
}
pre_check(){
# check if local cnt file exist
if [ -f $LOCAL_CNT_FILE ];then
echo "Local cnt file exist ..." >> /dev/null
else
echo "Local cnt file doesn't exist, so creat it ..." | tee $LOG_FILE
echo 1 > $LOCAL_CNT_FILE
fi
echo "---------------------------------------------" | tee $LOG_FILE
#Todo if need check something
sleep 120
}
start_dc_cycle(){
local_cnt=`cat $LOCAL_CNT_FILE`
if [ $local_cnt -le $aim_cnt ];then
echo "Index $local_cnt : will execute power cycle" | tee $LOG_FILE
local_cnt=$(($local_cnt+1))
echo $local_cnt > $LOCAL_CNT_FILE
ipmitool power cycle
fi
}
# ----------------------------------------------------
# The start of script
# ----------------------------------------------------
is_param_legal
pre_check
start_dc_cycle