2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-06-22 14:05:32 +00:00

modify rpower testcase if ipmi using wrong passwd

This commit is contained in:
junxiawang
2017-07-14 06:58:54 -04:00
parent 6627df0307
commit 25165bb81a
2 changed files with 149 additions and 22 deletions

View File

@ -152,44 +152,35 @@ cmd:rpower $$CN onstandby
cmd:a=0;while ! `rpower $$CN stat|grep "standby\|Standby" >/dev/null`; do sleep 5;((a++));if [ $a -gt 11 ];then break;fi done
check:ouptut=~standby|Standby
end
start:rpower_suspend_OpenpowerBmc
description:rpower openpowerbmc using suspend
start:rpower__wrongpasswd
description:rpower ipmi and openbmc using wrong passwd
Attribute: $$CN-The operation object of rpower command
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_wrongpasswd_test.sh -pt $$CN $$rightbmcpasswd $$rightbmcusername
check:rc==0
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_wrongpasswd_test.sh -c $$CN
check:rc==0
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_wrongpasswd_test.sh -apt $$CN $$rightbmcpasswd $$rightbmcusername
check:rc==0
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_wrongpasswd_test.sh -c $$CN
check:rc==0
end
start:rpower_suspend_OpenpowerBmc
cmd:rpower $$CN suspend
check:output=~Error: unsupported command rpower suspend for OpenPOWER
check:rc==1
end
start:rpower_softoff_OpenpowerBmc
description:rpower openpowerbmc using softoff
Attribute: $$CN-The operation object of rpower command
cmd:rpower $$CN softoff
check:output=~Error: unsupported command rpower softoff for OpenPOWER
check:rc==1
end
start:rpower_wake_OpenpowerBmc
description:rpower openpowerbmc using wake
Attribute: $$CN-The operation object of rpower command
cmd:rpower $$CN wake
check:output=~Error: unsupported command rpower wake for OpenPOWER
check:rc==1
end
start:rpower_errorcommand_OpenpowerBmc
description:rpower openpowerbmc using errorcommand
Attribute: $$CN-The operation object of rpower command
cmd:rpower $$CN ddd
check:output=~Unsupported command:
check:output=~Unsupported command:
check:rc==1
end
start:rpower_ipmi_wrongpasswd
description:rpower ipmi and its password wrong
Attribute: $$CN-The operation object of rpower command
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_ipmi_wrongpasswd_test.sh -pt $$CN $$ipmipasswd $$ipminame
check:rc==0
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_ipmi_wrongpasswd_test.sh -c $$CN
check:rc==0
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_ipmi_wrongpasswd_test.sh -apt $$CN $$ipmipasswd $$ipminame
check:rc==0
cmd:/opt/xcat/share/xcat/tools/autotest/testcase/rpower/rpower_ipmi_wrongpasswd_test.sh -c $$CN
check:rc==0
end

View File

@ -0,0 +1,136 @@
#!/bin/bash
function check_passwd_table(){
tabdump passwd |grep $MGT
if [ $? -eq 0 ];then
`tabdump passwd |grep $MGT>$TMPFILE`
else
return 1;
fi
}
function modify_passwd_table(){
Username=`cat $TMPFILE |awk -F "\"" '{print $4}'`;
Passwd=`cat $TMPFILE |awk -F "\"" '{print $6}'`;
`chtab key=$MGT passwd.password=$Passwd.wrong passwd.username=$Username`;
tabdump passwd;
}
function add_passwd_table()
{
`chtab key=$MGT passwd.password=$2 passwd.username=$3`;
rpower $1 stat
if [ $? -eq 0 ];then
`chtab key=$MGT passwd.password=$2.wrong passwd.username=$3`;
tabdump passwd;
else
echo "wrong password";
fi
}
function modify_node_definition()
{
chdef $1 bmcpassword=$2 bmcusername=$3
rpower $1 stat
if [ $? -eq 0 ];then
chdef $1 bmcpassword=$2.wrong bmcusername=$3;
tabdump passwd;
else
echo "wrong password";
fi
}
function clear_env(){
if [ -f $TMPFILE ];then
Username=`cat $TMPFILE |awk -F "\"" '{print $4}'`;
Passwd=`cat $TMPFILE |awk -F "\"" '{print $6}'`;
chtab key=$MGT passwd.password=$Passwd passwd.username=$Username;tabdump passwd;
chdef $1 bmcpassword= bmcusername=;
rm -rf $TMPFILE;
else
`chtab -d key=$MGT passwd`;
chdef $1 bmcpassword= bmcusername=;
fi
}
function check_result(){
output=$(rpower $1 stat 2>&1)
echo output is $output
value="";
if [[ `lsdef $1 |grep mgt ` =~ "ipmi" ]];then
value="Incorrect password provided";
else
value="Error: Invalid username or password";
fi
if [[ $output =~ $value ]];then
return 0;
else
return 1;
fi
}
echo "0 ARG: $0"
SCRIPT=$(readlink -f $0)
echo "SCRIPT=$SCRIPT"
TMPFILE="/tmp/xcat-test-`basename $SCRIPT`.tmp"
echo "TMPFILE=$TMPFILE"
MGT=""
if [[ `lsdef $2 |grep mgt` =~ "ipmi" ]];then
MGT="ipmi";
else
MGT="openbmc";
fi
echo mgt is $MGT
while [ "$#" -gt "0" ]
do
case $1 in
"-pt"|"--passwdtable" )
check_passwd_table
if [[ $? -eq 0 ]];then
modify_passwd_table
check_result $2
if [[ $? -eq 1 ]];then
exit 1
else
exit 0
fi
else
add_passwd_table $2 $3 $4
check_result $2
if [[ $? -eq 1 ]];then
exit 1
else
exit 0
fi
fi
;;
"-apt"|"--addpasswdtable" )
check_passwd_table
if [[ $? -eq 0 ]];then
`chtab -d key=ipmi passwd`;
if [[ $? -eq 1 ]];then
exit 1
fi
fi
modify_node_definition $2 $3 $4
check_result $2
if [[ $? -eq 1 ]];then
exit 1
else
exit 0
fi
;;
"-c"|"--clear" )
clear_env $2
if [[ $? -eq 1 ]];then
exit 1
else
exit 0
fi
;;
*)
echo
echo "Please Insert $0: -pt|-apt|-c"
echo
exit 1;
;;
esac
done