| *** Settings *** |
| Documentation Verify that the host boots between code updates of different |
| ... PNOR version. Verify with N, the current version, downgrade |
| ... and verify with N-1, update and verify N again, and finally |
| ... update and verify with N+1. |
| |
| Library ../../lib/code_update_utils.py |
| Variables ../../data/variables.py |
| Resource ../../lib/boot_utils.robot |
| Resource ../../lib/code_update_utils.robot |
| Resource ../../lib/openbmc_ffdc.robot |
| |
| Suite Setup Suite Setup Execution |
| |
| Test Teardown FFDC On Test Case Fail |
| |
| *** Variables *** |
| |
| ${QUIET} ${1} |
| ${IMAGE_FILE_PATH} ${EMPTY} |
| ${N_MINUS_ONE_IMAGE_FILE_PATH} ${EMPTY} |
| ${N_PLUS_ONE_IMAGE_FILE_PATH} ${EMPTY} |
| |
| *** Test Cases *** |
| |
| Host Multi Code Update |
| [Documentation] Do four code updates in a row. Update to N, N-1, N, and |
| ... then N+1. |
| [Tags] Host_Multi_Code_Update |
| [Template] Code Update And Power On Host |
| |
| # Image File Path |
| ${IMAGE_FILE_PATH} |
| ${N_MINUS_ONE_IMAGE_FILE_PATH} |
| ${IMAGE_FILE_PATH} |
| ${N_PLUS_ONE_IMAGE_FILE_PATH} |
| |
| |
| *** Keywords *** |
| |
| Suite Setup Execution |
| [Documentation] Do test suite setup tasks. |
| |
| Should Not Be Empty ${IMAGE_FILE_PATH} msg=Must set IMAGE_FILE_PATH. |
| Should Not Be Empty ${N_MINUS_ONE_IMAGE_FILE_PATH} |
| ... msg=Must set N_MINUS_ONE_IMAGE_FILE_PATH. |
| Should Not Be Empty ${N_PLUS_ONE_IMAGE_FILE_PATH} |
| ... msg=N_PLUS_ONE_IMAGE_FILE_PATH. |
| Should Not Be Empty ${OS_HOST} msg=Must set OS_HOST. |
| Should Not Be Empty ${OS_USERNAME} msg=Must set OS_USERNAME. |
| Should Not Be Empty ${OS_PASSWORD} msg=Must set OS_PASSWORD. |
| |
| |
| Code Update And Power On Host |
| [Documentation] Shutdown the host, update to the given image, and then |
| ... verify that the host is able to power on. |
| [Arguments] ${image_file_path} |
| |
| # Description of argument(s): |
| # image_file_path Path to the host image file. |
| |
| REST Power Off stack_mode=skip quiet=${1} |
| Delete All PNOR Images |
| Upload And Activate Image ${image_file_path} |
| REST Power On |