This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Test Design of rflash
python version
Introduction
This document provides an overview of the activities that are planned to be conducted on the IBM Witherspoon Physical Machine Firmware updating support testing. This test plan is intended for the use of xCAT FVT team.
The test is against xCAT version 2.13.11. The build of xCAT will be picked up from the xcat.org And the build of the latest Firmware of Witherspoon machines are downloaded from following link.
pfd.austin.ibm.com/releasenotes/indexop910.html
Overview of xCAT FVT
Test Software Requirements
Operating System :Red Hat Enterprise Linux Server release 7.4
Other Softwares
xCAT 2.13.11
Test Hardware Requirements
MN: any machines with latest xcat installed
CN: Witherspoon node (p9)
xCAT Test Detail Section
Test environment preparation
-
new OpenBMC python version rpm installation steps:
- Use yum install gcc and python-devel.ppc64le:
yum install -y gcc python-devel.ppc64le
- Install pip refer to https://pip.pypa.io/en/stable/installing/. Use pip to install gevent, greenlet, certifi, chardet, idna, urllib3, requests:
pip install gevent greenlet certifi chardet idna urllib3 requests
- Download and install xCAT-openbmc-py-2.13.10-snap201801250418.noarch.rpm:
wget http://xcat.org/files/xcat/xcat-dep/2.x_Linux/beta/xCAT-openbmc-py-2.13.10-snap201801250418.noarch.rpm yum localinstall -y xCAT-openbmc-py-2.13.10-snap201801250418.noarch.rpm
- enable OpenBMC python version:
export XCAT_OPENBMC_PYTHON=YES
- Use yum install gcc and python-devel.ppc64le:
Test cases
Automation cases
We have some rflash automation cases in file rflash_openbmc.0 under /opt/xcat/share/xcat/tools/autotest/testcase/rflash. After you install xcat-test, you will find the file.
[root@briggs01 rflash]# pwd
/opt/xcat/share/xcat/tools/autotest/testcase/rflash
[root@briggs01 rflash]# ls
rflash_openbmc.0
The steps to run automation cases.
- Install xcat-test on your testing nodes
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- create rflash cases bundle file by yourself.
[root@briggs01 bundle]# pwd
/opt/xcat/share/xcat/tools/autotest/bundle
[root@briggs01 bundle]# cat rflash.bundle
rflash_option_c_without_specify_noderange
rflash_option_l_without_specify_noderange
rflash_option_a_without_specify_noderange
rflash_option_u_without_specify_noderange
rflash_option_d_without_specify_noderange
rflash_without_option
rflash_unsupport_multiple_option_a_u
rflash_unsupport_multiple_option_a_c
rflash_unsupport_multiple_option_a_l
rflash_unsupport_multiple_option_a_d
rflash_unsupport_multiple_option_c_l
rflash_unsupport_multiple_option_c_u
rflash_unsupport_multiple_option_c_d
rflash_unsupport_multiple_option_l_d
rflash_unsupport_multiple_option_l_u
rflash_unsupport_multiple_option_u_d
rflash_option_c_file_not_exist
rflash_option_c_with_multiple_values
rflash_option_c_against_node
rflash_option_check_with_V_against_node
rflash_option_l_with_value
rflash_option_l
rflash_option_u_file_not_exist
rflash_option_u_with_multiple_values
rflash_option_a_file_not_exist
rflash_option_a_with_multiple_values
rflash_option_a_with_non_existent_id
rflash_option_delete_with_multiple_values
rflash_option_delete_with_non_existent_id
rflash_option_d_with_multiple_values
rflash_option_d_with_non_existent_dir
rflash_usage
- Run following commands to start your test.
[root@briggs01 testcase]# XCATTEST_CN=mid05tor12cn05 xcattest -b rflash.bundle
- Check the result under following directory
[root@briggs01 result]# pwd
/opt/xcat/share/xcat/tools/autotest/result
[root@briggs01 result]# vi failedcases.20180201192605
Manually cases
You can also reference to https://github.ibm.com/xcat2/team_process/blob/master/FVT/docs/rflash_Manual_Test_Steps.md for some detailed steps.
Test case 1
Check if rflash -c/--check could give out the firmware of node
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange -c or rflash noderange --check.
- Expected output should be the nodes' firmware level.
- Run rflash noderange -c -V or rflash noderange --check -V.
- Expected output should be the nodes' firmware level and detailed information.
Test case 2
Check if rflash -l/--list could list out available firmware on the BMC
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange -l or rflash noderange --list.
- Expected output should list all available firmwares on the BMC.
Test case 3
Check if rflash noderange tar_file_path -c|--check could give out the tar file's firmware level
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange tar_file_path -c or rflash noderange tar_file_path --check
- Expected output should give out the tar file's firmware level
Test case 4
Check if rflash noderange tar_file_path -u|--upload could upload the tar file to the node's bmc
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange tar_file_path -u or rflash noderange tar_file_path --upload
- Run rflash noderange -l to check if the upload is successful.
- Expected output should give out the tar file's firmware level.
- Run rflash noderange tar_file_path -u -V or rflash noderange tar_file_path --upload -V
- Expected output should give out the tar file's firmware level and detailed information.
Test case 5
Check if rflash noderange tar_file_path -a|--active could upload the tar file to the node's bmc and active the firmware.
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange tar_file_path -a -V or rflash noderange tar_file_path --active -V.
- To apply the firmware level, a reboot is required to BMC and HOST
- Expected output should upload and active the firmware in a single step. And the detailed information is displayed.
Test case 6
Check if rflash noderange image_id -a|--active could active the firmware on the node/bmc.
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange image_id -a or rflash noderange image_id --active.
- To apply the firmware level, a reboot is required to BMC and HOST
- Expected output should be the image_id firmware is activated on the node/bmc
Test case 7
Check if rflash noderange image_id -d|--delete could delete the image on the node/bmc.
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange image_id -d or rflash noderange image_id --delete.
- Expected output should be the image is deleted on the node/bmc
Test case 8
Check if rflash help information is correct.
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash -h or rflash --help
- Expected output should be rflash's help information.
Test case 9 (see automation bucket cases)
Check if rflash noderange false_value could give warning message.
- Define node. The node's definition should have bmc's ip. BMC should work correctly.
- Run rflash noderange false_value.
- Expected output should be warning message.
News
- Apr 22, 2016: xCAT 2.11.1 released.
- Mar 11, 2016: xCAT 2.9.3 (AIX only) released.
- Dec 11, 2015: xCAT 2.11 released.
- Nov 11, 2015: xCAT 2.9.2 (AIX only) released.
- Jul 30, 2015: xCAT 2.10 released.
- Jul 30, 2015: xCAT migrates from sourceforge to github
- Jun 26, 2015: xCAT 2.7.9 released.
- Mar 20, 2015: xCAT 2.9.1 released.
- Dec 12, 2014: xCAT 2.9 released.
- Sep 5, 2014: xCAT 2.8.5 released.
- May 23, 2014: xCAT 2.8.4 released.
- Jan 24, 2014: xCAT 2.7.8 released.
- Nov 15, 2013: xCAT 2.8.3 released.
- Jun 26, 2013: xCAT 2.8.2 released.
- May 17, 2013: xCAT 2.7.7 released.
- May 10, 2013: xCAT 2.8.1 released.
- Feb 28, 2013: xCAT 2.8 released.
- Nov 30, 2012: xCAT 2.7.6 released.
- Oct 29, 2012: xCAT 2.7.5 released.
- Aug 27, 2012: xCAT 2.7.4 released.
- Jun 22, 2012: xCAT 2.7.3 released.
- May 25, 2012: xCAT 2.7.2 released.
- Apr 20, 2012: xCAT 2.7.1 released.
- Mar 19, 2012: xCAT 2.7 released.
- Mar 15, 2012: xCAT 2.6.11 released.
- Jan 23, 2012: xCAT 2.6.10 released.
- Nov 15, 2011: xCAT 2.6.9 released.
- Sep 30, 2011: xCAT 2.6.8 released.
- Aug 26, 2011: xCAT 2.6.6 released.
- May 20, 2011: xCAT 2.6 released.
- Feb 14, 2011: Watson plays on Jeopardy and is managed by xCAT!
- xCAT Release Notes Summary
- xCAT OS And Hw Support Matrix
- xCAT Test Environment Summary
History
- Oct 22, 2010: xCAT 2.5 released.
- Apr 30, 2010: xCAT 2.4 is released.
- Oct 31, 2009: xCAT 2.3 released.
xCAT's 10 year anniversary! - Apr 16, 2009: xCAT 2.2 released.
- Oct 31, 2008: xCAT 2.1 released.
- Sep 12, 2008: Support for xCAT 2
can now be purchased! - June 9, 2008: xCAT breaths life into
(at the time) the fastest
supercomputer on the planet - May 30, 2008: xCAT 2.0 for Linux
officially released! - Oct 31, 2007: IBM open sources
xCAT 2.0 to allow collaboration
among all of the xCAT users. - Oct 31, 1999: xCAT 1.0 is born!
xCAT started out as a project in
IBM developed by Egan Ford. It
was quickly adopted by customers
and IBM manufacturing sites to
rapidly deploy clusters.