| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 1 | *** Settings *** | 
|  | 2 |  | 
|  | 3 | Documentation       Test dump functionality of OpenBMC. | 
|  | 4 |  | 
| George Keishing | fb3f9a5 | 2019-07-18 13:13:58 -0500 | [diff] [blame] | 5 | Resource            ../../lib/openbmc_ffdc.robot | 
|  | 6 | Resource            ../../lib/rest_client.robot | 
|  | 7 | Resource            ../../lib/dump_utils.robot | 
|  | 8 | Resource            ../../lib/boot_utils.robot | 
|  | 9 | Resource            ../../lib/utils.robot | 
| George Keishing | bac0c57 | 2019-08-08 23:19:45 -0500 | [diff] [blame] | 10 | Resource            ../../lib/state_manager.robot | 
| George Keishing | fb3f9a5 | 2019-07-18 13:13:58 -0500 | [diff] [blame] | 11 | Library             ../../lib/bmc_ssh_utils.py | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 12 |  | 
| Rahul Maheshwari | a89ff9e | 2020-09-25 05:04:33 -0500 | [diff] [blame] | 13 | Suite Setup         Suite Setup Execution | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 14 | Test Setup          Open Connection And Log In | 
| George Keishing | 40b7ee0 | 2017-11-13 05:12:41 -0600 | [diff] [blame] | 15 | Test Teardown       Test Teardown Execution | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 16 |  | 
|  | 17 | *** Test Cases *** | 
|  | 18 |  | 
| Anusha Dathatri | eda0949 | 2019-02-26 08:30:13 -0600 | [diff] [blame] | 19 | Verify Dump After Host Watchdog Error Injection | 
|  | 20 | [Documentation]  Inject host watchdog error and verify whether dump is generated. | 
|  | 21 | [Tags]  Verify_Dump_After_Host_Watchdog_Error_Injection | 
|  | 22 |  | 
| George Keishing | fb3f9a5 | 2019-07-18 13:13:58 -0500 | [diff] [blame] | 23 | Redfish Power On | 
| Anusha Dathatri | eda0949 | 2019-02-26 08:30:13 -0600 | [diff] [blame] | 24 |  | 
| Tim Lee | c4238a8 | 2021-12-16 11:25:16 +0800 | [diff] [blame] | 25 | Run Keyword And Ignore Error  Redfish Delete All BMC Dumps | 
| Anusha Dathatri | eda0949 | 2019-02-26 08:30:13 -0600 | [diff] [blame] | 26 |  | 
|  | 27 | # Enable auto reboot | 
|  | 28 | Set Auto Reboot  ${1} | 
|  | 29 |  | 
| Tim Lee | 3edb024 | 2021-12-23 14:04:58 +0800 | [diff] [blame] | 30 | Set Watchdog Interval Using Busctl  2000 | 
| Anusha Dathatri | eda0949 | 2019-02-26 08:30:13 -0600 | [diff] [blame] | 31 |  | 
|  | 32 | Wait Until Keyword Succeeds  300 sec  20 sec  Is Host Rebooted | 
|  | 33 |  | 
|  | 34 | #Get dump details | 
|  | 35 | @{dump_entry_list}=  Read Properties  ${DUMP_ENTRY_URI} | 
|  | 36 |  | 
| George Keishing | 16b3c7b | 2021-01-28 09:23:37 -0600 | [diff] [blame] | 37 | # Verifying that there is only one dump | 
| Anusha Dathatri | eda0949 | 2019-02-26 08:30:13 -0600 | [diff] [blame] | 38 | ${length}=  Get length  ${dump_entry_list} | 
|  | 39 | Should Be Equal As Integers  ${length}  ${1} | 
|  | 40 |  | 
|  | 41 | # Get dump id | 
|  | 42 | ${value}=  Get From List  ${dump_entry_list}  0 | 
|  | 43 | @{split_value}=  Split String  ${value}  / | 
|  | 44 | ${dump_id}=  Get From List  ${split_value}  -1 | 
|  | 45 |  | 
|  | 46 | # Max size for dump is 200k = 200x1024 | 
|  | 47 | ${dump_size}=  Read Attribute  ${DUMP_ENTRY_URI}${dump_id}  Size | 
|  | 48 | Should Be True  0 < ${dump_size} < 204800 | 
|  | 49 |  | 
|  | 50 |  | 
| Naman Navin Hegde | ebd4d68 | 2019-07-22 02:39:35 -0500 | [diff] [blame] | 51 | Verify Download BMC Dump | 
|  | 52 | [Documentation]  Verify that a BMC dump can be downloaded to the local machine. | 
|  | 53 | [Tags]  Verify_Download_BMC_Dump | 
|  | 54 |  | 
| Tim Lee | 792e31e | 2021-12-10 14:10:46 +0800 | [diff] [blame] | 55 | ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
| Naman Navin Hegde | ebd4d68 | 2019-07-22 02:39:35 -0500 | [diff] [blame] | 56 | ${dump_dict}=  Get Dump Dict | 
|  | 57 | ${bmc_dump_name}=  Fetch From Right  ${dump_dict['${dump_id}']}  / | 
|  | 58 | ${bmc_dump_checksum}  ${stderr}  ${rc}=  BMC Execute Command | 
|  | 59 | ...  md5sum ${dump_dict['${dump_id}']}|awk '{print$1}' | 
|  | 60 | ${bmc_dump_size}  ${stderr}  ${rc}=  BMC Execute Command | 
|  | 61 | ...  stat -c "%s" ${dump_dict['${dump_id}']} | 
|  | 62 |  | 
|  | 63 | ${response}=  OpenBMC Get Request  ${DUMP_DOWNLOAD_URI}${dump_id} | 
|  | 64 | ...  quiet=${1} | 
|  | 65 | Should Be Equal As Strings  ${response.status_code}  ${HTTP_OK} | 
|  | 66 | Create Binary File  ${EXECDIR}${/}dumps   ${response.content} | 
|  | 67 | Run  tar -xvf ${EXECDIR}${/}dumps | 
|  | 68 | ${download_dump_name}=  Fetch From Left  ${bmc_dump_name}  . | 
|  | 69 | ${download_dump_checksum}=  Run  md5sum ${EXECDIR}/dumps|awk '{print$1}' | 
|  | 70 | ${download_dump_size}=  Run  stat -c "%s" ${EXECDIR}${/}dumps | 
|  | 71 |  | 
|  | 72 | OperatingSystem.Directory Should Exist  ${EXECDIR}/${download_dump_name} | 
|  | 73 | ...  msg=Created dump name and downloaded dump name don't match. | 
|  | 74 | Should Be Equal As Strings  ${bmc_dump_checksum}  ${download_dump_checksum} | 
|  | 75 | Should Be Equal As Strings  ${bmc_dump_size}  ${download_dump_size} | 
|  | 76 |  | 
|  | 77 | Run  rm -rf ${EXECDIR}${/}${download_dump_name};rm ${EXECDIR}${/}dumps | 
|  | 78 |  | 
|  | 79 |  | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 80 | *** Keywords *** | 
|  | 81 |  | 
| Rahul Maheshwari | a89ff9e | 2020-09-25 05:04:33 -0500 | [diff] [blame] | 82 | Suite Setup Execution | 
|  | 83 | [Documentation]  Do initial suite setup tasks. | 
|  | 84 |  | 
|  | 85 | ${resp}=  OpenBMC Get Request  ${DUMP_URI} | 
| George Keishing | 7dc4847 | 2025-05-07 20:23:47 +0530 | [diff] [blame] | 86 | IF  '${resp.status_code}' == '${HTTP_NOT_FOUND}' | 
|  | 87 | Set Suite Variable  ${DUMP_URI}  /xyz/openbmc_project/dump/ | 
|  | 88 | Set Suite Variable  ${DUMP_ENTRY_URI}  /xyz/openbmc_project/dump/entry/ | 
|  | 89 | END | 
| Rahul Maheshwari | a89ff9e | 2020-09-25 05:04:33 -0500 | [diff] [blame] | 90 |  | 
|  | 91 |  | 
| George Keishing | 40b7ee0 | 2017-11-13 05:12:41 -0600 | [diff] [blame] | 92 | Test Teardown Execution | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 93 | [Documentation]  Do the post test teardown. | 
|  | 94 |  | 
| Rahul Maheshwari | 953038b | 2017-10-17 05:08:59 -0500 | [diff] [blame] | 95 | Wait Until Keyword Succeeds  3 min  15 sec  Verify No Dump In Progress | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 96 | FFDC On Test Case Fail | 
| Rahul Maheshwari | bf9024f | 2017-10-25 10:51:39 -0500 | [diff] [blame] | 97 | Delete All BMC Dump | 
| Rahul Maheshwari | ad676bf | 2017-06-22 15:06:05 -0500 | [diff] [blame] | 98 | Close All Connections |