| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 1 | *** Settings *** | 
 | 2 |  | 
 | 3 | Documentation       Test BMC dump functionality of OpenBMC. | 
 | 4 |  | 
| George Keishing | 88ec280 | 2021-08-04 03:04:22 -0500 | [diff] [blame] | 5 | Resource            ../../lib/bmc_redfish_resource.robot | 
 | 6 | Resource            ../../lib/boot_utils.robot | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 7 | Resource            ../../lib/dump_utils.robot | 
| George Keishing | 88ec280 | 2021-08-04 03:04:22 -0500 | [diff] [blame] | 8 | Resource            ../../lib/openbmc_ffdc.robot | 
| manashsarma | 7e1f2c5 | 2023-02-03 03:18:40 -0600 | [diff] [blame] | 9 | Variables           ../../data/pel_variables.py | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 10 |  | 
| George Keishing | f514ccb | 2021-02-02 23:55:56 -0600 | [diff] [blame] | 11 | Suite Setup         Redfish.Login | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 12 | Test Setup          Redfish Delete All BMC Dumps | 
 | 13 | Test Teardown       Test Teardown Execution | 
 | 14 |  | 
| Matt Fischer | 6fb70d9 | 2023-10-24 19:06:33 -0600 | [diff] [blame] | 15 | Test Tags          BMC_Dumps | 
| George Keishing | 6217ea3 | 2023-10-16 09:58:41 +0530 | [diff] [blame] | 16 |  | 
| Tim Lee | de2d130 | 2021-06-18 01:24:11 +0800 | [diff] [blame] | 17 | *** Variables *** | 
 | 18 |  | 
 | 19 | # Total size of the dump in kilo bytes | 
 | 20 | ${BMC_DUMP_TOTAL_SIZE}       ${1024} | 
 | 21 |  | 
 | 22 | # Minimum space required for one bmc dump in kilo bytes | 
 | 23 | ${BMC_DUMP_MIN_SPACE_REQD}   ${20} | 
| manashsarma | bd346b3 | 2022-07-20 06:22:58 -0500 | [diff] [blame] | 24 | ${MAX_DUMP_COUNT}            ${20} | 
| manashsarma | 395f880 | 2022-11-17 03:09:02 -0600 | [diff] [blame] | 25 | ${BMC_DUMP_COLLECTOR_PATH}   /var/lib/phosphor-debug-collector/dumps | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 26 |  | 
 | 27 | *** Test Cases *** | 
 | 28 |  | 
| manashsarma | 4b5b1fa | 2022-11-16 02:36:58 -0600 | [diff] [blame] | 29 | Verify Error Response For Already Deleted Dump Id | 
 | 30 |     [Documentation]  Delete non existing BMC dump and expect an error. | 
 | 31 |     [Tags]  Verify_Error_Response_For_Already_Deleted_Dump_Id | 
 | 32 |  | 
| manashsarma | 9dcabad | 2023-02-02 03:55:17 -0600 | [diff] [blame] | 33 |     Redfish Power Off  stack_mode=skip | 
| manashsarma | 4b5b1fa | 2022-11-16 02:36:58 -0600 | [diff] [blame] | 34 |     ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
| manashsarma | 6cc5bcf | 2023-08-22 02:22:48 -0500 | [diff] [blame] | 35 |     Wait Until Keyword Succeeds  15 sec  5 sec  Redfish Delete BMC Dump  ${dump_id} | 
| manashsarma | 4b5b1fa | 2022-11-16 02:36:58 -0600 | [diff] [blame] | 36 |     Run Keyword And Expect Error  ValueError: *  Redfish Delete BMC Dump  ${dump_id} | 
 | 37 |  | 
 | 38 |  | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 39 | Verify User Initiated BMC Dump When Host Powered Off | 
 | 40 |     [Documentation]  Create user initiated BMC dump at host off state and | 
 | 41 |     ...  verify dump entry for it. | 
 | 42 |     [Tags]  Verify_User_Initiated_BMC_Dump_When_Host_Powered_Off | 
 | 43 |  | 
 | 44 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 45 |     ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
| Rahul Maheshwari | bcefdf2 | 2020-10-16 07:51:34 -0500 | [diff] [blame] | 46 |     ${dump_entries}=  Get BMC Dump Entries | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 47 |     Length Should Be  ${dump_entries}  1 | 
 | 48 |     List Should Contain Value  ${dump_entries}  ${dump_id} | 
 | 49 |  | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 50 |  | 
| Rahul Maheshwari | e8e9d0c | 2020-10-30 02:39:01 -0500 | [diff] [blame] | 51 | Verify User Initiated BMC Dump Size | 
| manashsarma | 7831dc2 | 2022-03-08 01:49:36 -0600 | [diff] [blame] | 52 |     [Documentation]  Verify user initiated BMC dump size is under 20 MB. | 
| Rahul Maheshwari | e8e9d0c | 2020-10-30 02:39:01 -0500 | [diff] [blame] | 53 |     [Tags]  Verify_User_Initiated_BMC_Dump_Size | 
 | 54 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 55 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 56 |     ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 57 |     ${resp}=  Redfish.Get Properties  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_id} | 
| Rahul Maheshwari | e8e9d0c | 2020-10-30 02:39:01 -0500 | [diff] [blame] | 58 |  | 
 | 59 |     # Example of response from above Redfish GET request. | 
 | 60 |     # "@odata.type": "#LogEntry.v1_7_0.LogEntry", | 
 | 61 |     # "AdditionalDataSizeBytes": 31644, | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 62 |     # "AdditionalDataURI": "/redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/attachment/9", | 
| Rahul Maheshwari | e8e9d0c | 2020-10-30 02:39:01 -0500 | [diff] [blame] | 63 |     # "Created": "2020-10-23T06:32:53+00:00", | 
 | 64 |     # "DiagnosticDataType": "Manager", | 
 | 65 |     # "EntryType": "Event", | 
 | 66 |     # "Id": "9", | 
 | 67 |     # "Name": "BMC Dump Entry" | 
 | 68 |  | 
| manashsarma | 7831dc2 | 2022-03-08 01:49:36 -0600 | [diff] [blame] | 69 |     # Max size for dump is 20 MB = 20x1024x1024 Byte. | 
 | 70 |     Should Be True  0 < ${resp["AdditionalDataSizeBytes"]} < 20971520 | 
| Rahul Maheshwari | e8e9d0c | 2020-10-30 02:39:01 -0500 | [diff] [blame] | 71 |  | 
 | 72 |  | 
| manashsarma | 7e1f2c5 | 2023-02-03 03:18:40 -0600 | [diff] [blame] | 73 | Verify Internal Failure Initiated BMC Dump Size | 
 | 74 |     [Documentation]  Verify that the internal failure initiated BMC dump size is under 20 MB. | 
 | 75 |     [Tags]  Verify_Internal_Failure_Initiated_BMC_Dump_Size | 
 | 76 |  | 
| manashsarma | a8efe72 | 2024-02-26 03:24:55 -0600 | [diff] [blame] | 77 |     Redfish Power Off  stack_mode=skip | 
| manashsarma | 7e1f2c5 | 2023-02-03 03:18:40 -0600 | [diff] [blame] | 78 |     Redfish Delete All BMC Dumps | 
 | 79 |  | 
 | 80 |     # Create an internal failure error log. | 
 | 81 |     BMC Execute Command  ${CMD_INTERNAL_FAILURE} | 
 | 82 |  | 
 | 83 |     # Wait for BMC dump to get generated after injecting internal failure. | 
 | 84 |     Wait Until Keyword Succeeds  2 min  10 sec  Is BMC Dump Available | 
 | 85 |  | 
 | 86 |     # Verify that only one BMC dump is generated after injecting error. | 
 | 87 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 88 |     ${length}=  Get length  ${dump_entries} | 
 | 89 |     Should Be Equal As Integers  ${length}  ${1} | 
 | 90 |  | 
 | 91 |     # Max size for dump is 20 MB = 20x1024x1024 Byte. | 
 | 92 |     ${resp}=  Redfish.Get Properties | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 93 |     ...  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_entries[0]} | 
| manashsarma | 7e1f2c5 | 2023-02-03 03:18:40 -0600 | [diff] [blame] | 94 |     Should Be True  0 < ${resp["AdditionalDataSizeBytes"]} < 20971520 | 
 | 95 |  | 
 | 96 |  | 
| manashsarma | bbc68bc | 2022-12-05 09:55:17 -0600 | [diff] [blame] | 97 | Verify Multiple BMC Dump Creation | 
 | 98 |     [Documentation]  Verify that multiple BMC dumps can be created one after | 
 | 99 |     ...  another successfully. | 
 | 100 |     [Tags]   Verify_Multiple_BMC_Dump_Creation | 
 | 101 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 102 |     Redfish Power Off  stack_mode=skip | 
| manashsarma | bbc68bc | 2022-12-05 09:55:17 -0600 | [diff] [blame] | 103 |     ${dump_count}=  Evaluate  random.randint(5, 10)  modules=random | 
 | 104 |     FOR  ${INDEX}  IN  1  ${dump_count} | 
 | 105 |       Create User Initiated BMC Dump Via Redfish | 
 | 106 |     END | 
 | 107 |  | 
 | 108 |  | 
| manashsarma | 395f880 | 2022-11-17 03:09:02 -0600 | [diff] [blame] | 109 | Verify BMC Dump Default Location In BMC | 
 | 110 |      [Documentation]  Verify that BMC dump is created in its default location of BMC. | 
| George Keishing | 224e4c7 | 2022-12-14 05:07:58 -0600 | [diff] [blame] | 111 |      [Tags]  Verify_BMC_Dump_Default_Location_In_BMC | 
| manashsarma | 395f880 | 2022-11-17 03:09:02 -0600 | [diff] [blame] | 112 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 113 |      Redfish Power Off  stack_mode=skip | 
| manashsarma | 395f880 | 2022-11-17 03:09:02 -0600 | [diff] [blame] | 114 |      Redfish Delete All BMC Dumps | 
 | 115 |      ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
 | 116 |      ${dump_file}  ${stderr}  ${rc}=  BMC Execute Command | 
 | 117 |      ...  ls ${BMC_DUMP_COLLECTOR_PATH}/${dump_id} | 
 | 118 |      Should Be True  ${rc} == 0 | 
| manashsarma | c30e02a | 2023-02-20 06:46:15 -0600 | [diff] [blame] | 119 |      Should Contain Any  ${dump_file}  BMCDUMP  obmcdump | 
| manashsarma | 395f880 | 2022-11-17 03:09:02 -0600 | [diff] [blame] | 120 |  | 
 | 121 |  | 
| manashsarma | 4b5d6ac | 2023-02-08 00:04:03 -0600 | [diff] [blame] | 122 | Verify User Initiated BMC Dump At Host Booting | 
 | 123 |     [Documentation]  Create and verify user initiated BMC dump during Host is powwering on | 
 | 124 |     ...  or when host booting is in progress. | 
 | 125 |     [Tags]  Verify_User_Initiated_BMC_Dump_At_Host_Booting | 
 | 126 |  | 
| manashsarma | 9712ac5 | 2023-03-09 04:54:41 -0600 | [diff] [blame] | 127 |     Redfish Power Off  stack_mode=skip | 
| manashsarma | 4b5d6ac | 2023-02-08 00:04:03 -0600 | [diff] [blame] | 128 |     Redfish Delete All BMC Dumps | 
 | 129 |  | 
 | 130 |     # Initiate power on. | 
 | 131 |     Redfish Power Operation  On | 
 | 132 |     Wait Until Keyword Succeeds  2 min  5 sec  Is Boot Progress Changed | 
 | 133 |  | 
 | 134 |     # Create user initiated BMC dump and verify only one dump is available. | 
 | 135 |     Create User Initiated BMC Dump Via Redfish | 
 | 136 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 137 |     Length Should Be  ${dump_entries}  1 | 
 | 138 |  | 
 | 139 |  | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 140 | Verify Dump Persistency On Dump Service Restart | 
 | 141 |     [Documentation]  Create user dump, restart dump manager service and verify dump | 
 | 142 |     ...  persistency. | 
 | 143 |     [Tags]  Verify_Dump_Persistency_On_Dump_Service_Restart | 
 | 144 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 145 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 146 |     Create User Initiated BMC Dump Via Redfish | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 147 |     ${dump_entries_before}=  redfish_utils.get_member_list  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 148 |  | 
 | 149 |     # Restart dump service. | 
 | 150 |     BMC Execute Command  systemctl restart xyz.openbmc_project.Dump.Manager.service | 
 | 151 |     Sleep  10s  reason=Wait for BMC dump service to restart properly | 
 | 152 |  | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 153 |     ${dump_entries_after}=  redfish_utils.get_member_list  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 154 |     Lists Should Be Equal  ${dump_entries_before}  ${dump_entries_after} | 
 | 155 |  | 
 | 156 |  | 
 | 157 | Verify Dump Persistency On BMC Reset | 
 | 158 |     [Documentation]  Create user dump, reset BMC and verify dump persistency. | 
 | 159 |     [Tags]  Verify_Dump_Persistency_On_BMC_Reset | 
 | 160 |  | 
| manashsarma | 8fa9c89 | 2022-10-03 06:20:58 -0500 | [diff] [blame] | 161 |     # Power off host so that dump is not offloaded to host OS. | 
 | 162 |     Redfish Power Off  stack_mode=skip | 
 | 163 |  | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 164 |     Create User Initiated BMC Dump Via Redfish | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 165 |     ${dump_entries_before}=  redfish_utils.get_member_list  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 166 |  | 
 | 167 |     # Reset BMC. | 
| George Keishing | 88ec280 | 2021-08-04 03:04:22 -0500 | [diff] [blame] | 168 |     OBMC Reboot (off)  stack_mode=skip | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 169 |  | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 170 |     ${dump_entries_after}=  redfish_utils.get_member_list  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 171 |     Lists Should Be Equal  ${dump_entries_before}  ${dump_entries_after} | 
 | 172 |  | 
 | 173 |  | 
| Rahul Maheshwari | 95cbceb | 2020-10-21 23:25:08 -0500 | [diff] [blame] | 174 | Delete User Initiated BMC Dump And Verify | 
 | 175 |     [Documentation]  Delete user initiated BMC dump and verify. | 
 | 176 |     [Tags]  Delete_User_Initiated_BMC_Dump_And_Verify | 
 | 177 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 178 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 179 |     ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
| manashsarma | 6cc5bcf | 2023-08-22 02:22:48 -0500 | [diff] [blame] | 180 |     Wait Until Keyword Succeeds  15 sec  5 sec  Redfish Delete BMC Dump  ${dump_id} | 
| Rahul Maheshwari | 95cbceb | 2020-10-21 23:25:08 -0500 | [diff] [blame] | 181 |  | 
 | 182 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 183 |     Should Be Empty  ${dump_entries} | 
 | 184 |  | 
 | 185 |  | 
 | 186 | Delete All User Initiated BMC Dumps And Verify | 
 | 187 |     [Documentation]  Delete all user initiated BMC dumps and verify. | 
 | 188 |     [Tags]  Delete_All_User_Initiated_BMC_Dumps_And_Verify | 
 | 189 |  | 
| manashsarma | 70d840e | 2022-10-18 02:34:45 -0500 | [diff] [blame] | 190 |     # Power off host so that dump is not offloaded to host OS. | 
 | 191 |     Redfish Power Off  stack_mode=skip | 
 | 192 |  | 
| Rahul Maheshwari | 95cbceb | 2020-10-21 23:25:08 -0500 | [diff] [blame] | 193 |     # Create some BMC dump. | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 194 |     Create User Initiated BMC Dump Via Redfish | 
 | 195 |     Create User Initiated BMC Dump Via Redfish | 
| Rahul Maheshwari | 95cbceb | 2020-10-21 23:25:08 -0500 | [diff] [blame] | 196 |  | 
 | 197 |     Redfish Delete All BMC Dumps | 
 | 198 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 199 |     Should Be Empty  ${dump_entries} | 
 | 200 |  | 
 | 201 |  | 
| Rahul Maheshwari | 4f338ab | 2020-10-21 23:28:40 -0500 | [diff] [blame] | 202 | Create Two User Initiated BMC Dumps | 
 | 203 |     [Documentation]  Create two user initiated BMC dumps. | 
 | 204 |     [Tags]  Create_Two_User_Initiated_BMC_Dumps | 
 | 205 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 206 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 207 |     ${dump_id1}=  Create User Initiated BMC Dump Via Redfish | 
 | 208 |     ${dump_id2}=  Create User Initiated BMC Dump Via Redfish | 
| Rahul Maheshwari | 4f338ab | 2020-10-21 23:28:40 -0500 | [diff] [blame] | 209 |  | 
 | 210 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 211 |     Length Should Be  ${dump_entries}  2 | 
 | 212 |     Should Contain  ${dump_entries}  ${dump_id1} | 
 | 213 |     Should Contain  ${dump_entries}  ${dump_id2} | 
 | 214 |  | 
 | 215 |  | 
 | 216 | Create Two User Initiated BMC Dumps And Delete One | 
 | 217 |     [Documentation]  Create two dumps and delete the first. | 
 | 218 |     [Tags]  Create_Two_User_Initiated_BMC_Dumps_And_Delete_One | 
 | 219 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 220 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 221 |     ${dump_id1}=  Create User Initiated BMC Dump Via Redfish | 
 | 222 |     ${dump_id2}=  Create User Initiated BMC Dump Via Redfish | 
| Rahul Maheshwari | 4f338ab | 2020-10-21 23:28:40 -0500 | [diff] [blame] | 223 |  | 
| manashsarma | 6cc5bcf | 2023-08-22 02:22:48 -0500 | [diff] [blame] | 224 |     Wait Until Keyword Succeeds  15 sec  5 sec  Redfish Delete BMC Dump  ${dump_id1} | 
| Rahul Maheshwari | 4f338ab | 2020-10-21 23:28:40 -0500 | [diff] [blame] | 225 |  | 
 | 226 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 227 |     Length Should Be  ${dump_entries}  1 | 
 | 228 |     List Should Contain Value  ${dump_entries}  ${dump_id2} | 
 | 229 |  | 
 | 230 |  | 
 | 231 | Create And Delete User Initiated BMC Dump Multiple Times | 
 | 232 |     [Documentation]  Create and delete user initiated BMC dump multiple times. | 
 | 233 |     [Tags]  Create_And_Delete_User_Initiated_BMC_Dump_Multiple_Times | 
 | 234 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 235 |     Redfish Power Off  stack_mode=skip | 
| Rahul Maheshwari | 4f338ab | 2020-10-21 23:28:40 -0500 | [diff] [blame] | 236 |     FOR  ${INDEX}  IN  1  10 | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 237 |       ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
| manashsarma | 6cc5bcf | 2023-08-22 02:22:48 -0500 | [diff] [blame] | 238 |       Wait Until Keyword Succeeds  15 sec  5 sec  Redfish Delete BMC Dump  ${dump_id} | 
| Rahul Maheshwari | 4f338ab | 2020-10-21 23:28:40 -0500 | [diff] [blame] | 239 |     END | 
 | 240 |  | 
 | 241 |  | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 242 | Verify Maximum BMC Dump Creation | 
 | 243 |     [Documentation]  Create maximum BMC dump and verify error when dump runs out of space. | 
 | 244 |     [Tags]  Verify_Maximum_BMC_Dump_Creation | 
 | 245 |     [Teardown]  Redfish Delete All BMC Dumps | 
 | 246 |  | 
 | 247 |     # Maximum allowed space for dump is 1024 KB. BMC typically hold 8-14 dumps | 
 | 248 |     # before running out of this dump space. So trying to create dumps in 20 | 
 | 249 |     # iterations to run out of space. | 
| manashsarma | bd346b3 | 2022-07-20 06:22:58 -0500 | [diff] [blame] | 250 |     # User can key in the Maximum allowed space for bmc dump and how many iteration. | 
 | 251 |     FOR  ${n}  IN RANGE  0  ${MAX_DUMP_COUNT} | 
| Rahul Maheshwari | bd38aa4 | 2021-08-04 01:24:39 -0500 | [diff] [blame] | 252 |       Create User Initiated BMC Dump Via Redfish | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 253 |       ${dump_space}=  Get Disk Usage For Dumps | 
| Tim Lee | de2d130 | 2021-06-18 01:24:11 +0800 | [diff] [blame] | 254 |       Exit For Loop If  ${dump_space} >= (${BMC_DUMP_TOTAL_SIZE} - ${BMC_DUMP_MIN_SPACE_REQD}) | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 255 |     END | 
 | 256 |  | 
 | 257 |     # Check error while creating dump when dump size is full. | 
 | 258 |     ${payload}=  Create Dictionary  DiagnosticDataType=Manager | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 259 |     Redfish.Post  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 260 |     ...  body=${payload}  valid_status_codes=[${HTTP_INTERNAL_SERVER_ERROR}] | 
 | 261 |  | 
 | 262 |  | 
| manashsarma | 633cac9 | 2022-11-25 03:27:03 -0600 | [diff] [blame] | 263 | Verify BMC Core Dump When Host Powered Off | 
 | 264 |     [Documentation]  Verify BMC core dump after application crash at host powered off state. | 
 | 265 |     [Tags]  Verify_BMC_Core_Dump_When_Host_Powered_Off | 
 | 266 |  | 
 | 267 |     Redfish Power Off  stack_mode=skip | 
 | 268 |  | 
 | 269 |     # Ensure all dumps are cleaned out. | 
 | 270 |     Redfish Delete All BMC Dumps | 
 | 271 |     Trigger Core Dump | 
 | 272 |  | 
 | 273 |     # Verify that BMC dump is available. | 
 | 274 |     Wait Until Keyword Succeeds  2 min  10 sec  Is BMC Dump Available | 
 | 275 |  | 
 | 276 |  | 
| manashsarma | 849189c | 2022-11-28 04:16:51 -0600 | [diff] [blame] | 277 | Verify Core Dump Size | 
 | 278 |     [Documentation]  Verify BMC core dump size is under 20 MB. | 
 | 279 |     [Tags]  Verify_Core_Dump_Size | 
 | 280 |  | 
 | 281 |     Redfish Power Off  stack_mode=skip | 
 | 282 |  | 
 | 283 |     # Ensure all dumps are cleaned out. | 
 | 284 |     Redfish Delete All BMC Dumps | 
 | 285 |     Trigger Core Dump | 
 | 286 |  | 
 | 287 |     # Verify that BMC dump is available. | 
 | 288 |     Wait Until Keyword Succeeds  2 min  10 sec  Is BMC Dump Available | 
 | 289 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 290 |     ${resp}=  Redfish.Get Properties | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 291 |     ...  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_entries[0]} | 
| manashsarma | 849189c | 2022-11-28 04:16:51 -0600 | [diff] [blame] | 292 |  | 
 | 293 |     # Max size for dump is 20 MB = 20x1024x1024 Byte. | 
 | 294 |     Should Be True  0 < ${resp["AdditionalDataSizeBytes"]} < 20971520 | 
 | 295 |  | 
 | 296 |  | 
| manashsarma | fcbfdf6 | 2022-12-07 06:36:28 -0600 | [diff] [blame] | 297 | Verify Error While Initiating BMC Dump During Dumping State | 
 | 298 |     [Documentation]  Verify error while initiating BMC dump during dumping state. | 
 | 299 |     [Tags]  Verify_Error_While_Initiating_BMC_Dump_During_Dumping_State | 
 | 300 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 301 |     Redfish Power Off  stack_mode=skip | 
| Nandish-Matti | af5bc15 | 2023-01-30 00:49:59 -0600 | [diff] [blame] | 302 |     ${task_id}=  Create User Initiated BMC Dump Via Redfish  ${1} | 
| manashsarma | fcbfdf6 | 2022-12-07 06:36:28 -0600 | [diff] [blame] | 303 |  | 
 | 304 |     # Check error while initiating BMC dump while dump in progress. | 
 | 305 |     ${payload}=  Create Dictionary  DiagnosticDataType=Manager | 
 | 306 |     Redfish.Post | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 307 |     ...  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData | 
| manashsarma | fcbfdf6 | 2022-12-07 06:36:28 -0600 | [diff] [blame] | 308 |     ...  body=${payload}  valid_status_codes=[${HTTP_SERVICE_UNAVAILABLE}] | 
 | 309 |  | 
| Nandish-Matti | af5bc15 | 2023-01-30 00:49:59 -0600 | [diff] [blame] | 310 |     # Wait for above initiated dump to complete. Otherwise, on going dump would impact next test. | 
 | 311 |     Wait Until Keyword Succeeds  5 min  15 sec  Check Task Completion  ${task_id} | 
 | 312 |  | 
| manashsarma | fcbfdf6 | 2022-12-07 06:36:28 -0600 | [diff] [blame] | 313 |  | 
| manashsarma | aa845b7 | 2022-12-12 05:41:32 -0600 | [diff] [blame] | 314 | Verify BMC Dump Create Errors While Another BMC Dump In Progress | 
 | 315 |     [Documentation]  Verify BMC dump creation error until older BMC dump completion. | 
 | 316 |     [Tags]  Verify_BMC_Dump_Create_Errors_While_Another_BMC_Dump_In_Progress | 
 | 317 |  | 
| manashsarma | e52174b | 2023-04-03 01:26:56 -0500 | [diff] [blame] | 318 |     Redfish Power Off  stack_mode=skip | 
 | 319 |  | 
| manashsarma | aa845b7 | 2022-12-12 05:41:32 -0600 | [diff] [blame] | 320 |     # Initiate a BMC dump that returns without completion. | 
 | 321 |     ${task_id}=  Create User Initiated BMC Dump Via Redfish  ${1} | 
| manashsarma | cf757da | 2023-10-12 01:12:23 -0500 | [diff] [blame] | 322 |     ${task_dict}=  Redfish.Get Properties  /redfish/v1/TaskService/Tasks/${task_id} | 
| manashsarma | aa845b7 | 2022-12-12 05:41:32 -0600 | [diff] [blame] | 323 |     ${payload}=  Create Dictionary  DiagnosticDataType=Manager | 
| manashsarma | cf757da | 2023-10-12 01:12:23 -0500 | [diff] [blame] | 324 |     IF  '${task_dict['TaskState']}' != 'Completed' | 
| manashsarma | 785244c | 2023-03-15 05:56:18 -0500 | [diff] [blame] | 325 |         ${resp}=  Redfish.Post | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 326 |         ...  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Actions/LogService.CollectDiagnosticData | 
| manashsarma | cf757da | 2023-10-12 01:12:23 -0500 | [diff] [blame] | 327 |         ...  body=${payload}  valid_status_codes=[${HTTP_SERVICE_UNAVAILABLE}] | 
| manashsarma | aa845b7 | 2022-12-12 05:41:32 -0600 | [diff] [blame] | 328 |     END | 
 | 329 |  | 
| manashsarma | aa845b7 | 2022-12-12 05:41:32 -0600 | [diff] [blame] | 330 |     # Wait for above initiated dump to complete. Otherwise, on going dump would impact next test. | 
| manashsarma | cf757da | 2023-10-12 01:12:23 -0500 | [diff] [blame] | 331 |     Wait Until Keyword Succeeds  5 min  15 sec  Check Task Completion  ${task_id} | 
| manashsarma | aa845b7 | 2022-12-12 05:41:32 -0600 | [diff] [blame] | 332 |  | 
 | 333 |  | 
| manashsarma | adabd3b | 2023-02-08 04:51:32 -0600 | [diff] [blame] | 334 | Verify Core Dump After Terminating Dump Manager Service | 
 | 335 |     [Documentation]  Verify initiate core dumps and kill Phosphor-dump-manager. | 
 | 336 |     [Tags]  Verify_Core_Dump_After_Terminating_Dump_Manager_Service | 
 | 337 |  | 
 | 338 |     Redfish Power Off  stack_mode=skip | 
 | 339 |  | 
 | 340 |     # Remove all available dumps in BMC. | 
 | 341 |     Redfish Delete All BMC Dumps | 
 | 342 |  | 
 | 343 |     # Find the pid of the phosphor-dump-manage process and kill it. | 
 | 344 |     ${cmd_buf}=  Catenate  kill -s SEGV $(pgrep phosphor-dump-manager) | 
 | 345 |     ${cmd_output}  ${stderr}  ${rc}=  BMC Execute Command  ${cmd_buf} | 
 | 346 |     Should Be Equal As Integers  ${rc}  ${0} | 
 | 347 |  | 
 | 348 |     # Verify that BMC dump is available. | 
| manashsarma | 7236716 | 2025-03-05 05:10:14 -0600 | [diff] [blame] | 349 |     Wait Until Keyword Succeeds  10 min  10 sec  Is BMC Dump Available | 
| manashsarma | adabd3b | 2023-02-08 04:51:32 -0600 | [diff] [blame] | 350 |  | 
| George Keishing | 4611b81 | 2023-02-16 09:44:33 -0600 | [diff] [blame] | 351 |     # Verifying that there is only one dump. | 
| manashsarma | adabd3b | 2023-02-08 04:51:32 -0600 | [diff] [blame] | 352 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 353 |     ${length}=  Get length  ${dump_entries} | 
 | 354 |     Should Be Equal As Integers  ${length}  ${1} | 
 | 355 |  | 
 | 356 |  | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 357 | Verify User Initiated BMC Dump Type | 
 | 358 |     [Documentation]  Download user initiate BMC dump and validates its type. | 
 | 359 |     [Tags]  Verify_User_Initiated_BMC_Dump_Type | 
 | 360 |  | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 361 |     Redfish Power Off  stack_mode=skip | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 362 |     ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
 | 363 |  | 
 | 364 |     # Download BMC dump and verify its size. | 
| Yi Hu | c32434a | 2024-01-11 17:33:10 -0800 | [diff] [blame] | 365 |     ${resp}=  Redfish.Get  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_id} | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 366 |     ${redfish_dump_creation_timestamp}=  Set Variable  ${resp.dict["Created"]} | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 367 |     # Download BMC dump and verify its size. | 
 | 368 |     ${tarfile}=  Download BMC Dump  ${dump_id} | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 369 |  | 
 | 370 |     # Extract dump and verify type of dump from summary.log content: | 
 | 371 |     # Wed Aug 30 17:23:29 UTC 2023 Name:          BMCDUMP.XXXXXXX.0001005.20230830172329 | 
 | 372 |     # Wed Aug 30 17:23:29 UTC 2023 Epochtime:     1693416209 | 
 | 373 |     # Wed Aug 30 17:23:29 UTC 2023 ID:            0001005 | 
 | 374 |     # Wed Aug 30 17:23:29 UTC 2023 Type:          user | 
 | 375 |     ${extracted_dump_folder}=  Extract BMC Dump  BMC_dump.tar.gz  ${redfish_dump_creation_timestamp} | 
 | 376 |     ${contents}=  OperatingSystem.Get File  ${extracted_dump_folder}/summary.log | 
 | 377 |     Should Match Regexp  ${contents}  Type:[ ]*user | 
 | 378 |  | 
 | 379 |     # Clean extracted dump files. | 
 | 380 |     Remove Files  output  output.zst | 
 | 381 |     Remove Directory  ${extracted_dump_folder}  True | 
 | 382 |  | 
 | 383 |  | 
| manashsarma | 7223e6dd | 2023-09-21 01:10:24 -0500 | [diff] [blame] | 384 | Verify Retrieve Core Initiated BMC Dump | 
 | 385 |     [Documentation]  Verify retrieval of core initiated BMC dump. | 
 | 386 |     [Tags]  Verify_Retrieve_Core_Initiated_BMC_Dump | 
 | 387 |  | 
 | 388 |     Redfish Power Off  stack_mode=skip | 
 | 389 |  | 
 | 390 |     # Ensure all dumps are cleaned out. | 
 | 391 |     Redfish Delete All BMC Dumps | 
 | 392 |     Trigger Core Dump | 
 | 393 |  | 
 | 394 |     # Verify that BMC dump is available. | 
 | 395 |     Wait Until Keyword Succeeds  2 min  10 sec  Is BMC Dump Available | 
 | 396 |  | 
 | 397 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 398 |     # Download BMC dump and verify its size. | 
 | 399 |     Download BMC Dump  ${dump_entries[0]} | 
 | 400 |  | 
 | 401 |  | 
| manashsarma | fcc14df | 2023-09-20 11:37:50 -0500 | [diff] [blame] | 402 | Verify Retrieve User Initiated BMC Dump | 
 | 403 |     [Documentation]  Verify retrieval of user initiated BMC dump. | 
 | 404 |     [Tags]  Verify_Retrieve_User_Initiated_BMC_Dump | 
 | 405 |  | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 406 |     Redfish Power Off  stack_mode=skip | 
| manashsarma | fcc14df | 2023-09-20 11:37:50 -0500 | [diff] [blame] | 407 |     ${dump_id}=  Create User Initiated BMC Dump Via Redfish | 
 | 408 |  | 
 | 409 |     # Download BMC dump. | 
 | 410 |     Download BMC Dump  ${dump_id} | 
 | 411 |  | 
 | 412 |  | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 413 | Verify Core Initiated BMC Dump Type | 
 | 414 |     [Documentation]  Download core initiate BMC dump and validates its type. | 
 | 415 |     [Tags]  Verify_Core_Initiated_BMC_Dump_Type | 
 | 416 |  | 
 | 417 |     Redfish Power Off  stack_mode=skip | 
 | 418 |  | 
 | 419 |     # Ensure all dumps are cleaned out. | 
 | 420 |     Redfish Delete All BMC Dumps | 
 | 421 |     Trigger Core Dump | 
 | 422 |  | 
 | 423 |     # Verify that BMC dump is available. | 
 | 424 |     Wait Until Keyword Succeeds  2 min  10 sec  Is BMC Dump Available | 
 | 425 |  | 
 | 426 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 427 |  | 
 | 428 |     # Find the timestamp of BMC dump. | 
| Yi Hu | c32434a | 2024-01-11 17:33:10 -0800 | [diff] [blame] | 429 |     ${resp}=  Redfish.Get  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_entries[0]} | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 430 |     ${redfish_dump_creation_timestamp}=  Set Variable  ${resp.dict["Created"]} | 
 | 431 |  | 
 | 432 |     # Download BMC dump and verify its size. | 
 | 433 |     ${tarfile}=  Download BMC Dump  ${dump_entries[0]} | 
 | 434 |  | 
 | 435 |     # Extract dump and verify type of dump from summary.log content: | 
 | 436 |     # Wed Aug 30 17:23:29 UTC 2023 Name:          BMCDUMP.XXXXXXX.0001005.20230830172329 | 
 | 437 |     # Wed Aug 30 17:23:29 UTC 2023 Epochtime:     1693416209 | 
 | 438 |     # Wed Aug 30 17:23:29 UTC 2023 ID:            0001005 | 
 | 439 |     # Wed Aug 30 17:23:29 UTC 2023 Type:          core | 
 | 440 |  | 
 | 441 |     ${extracted_dump_folder}=  Extract BMC Dump  ${tarfile}  ${redfish_dump_creation_timestamp} | 
 | 442 |     ${contents}=  OperatingSystem.Get File  ${extracted_dump_folder}/summary.log | 
 | 443 |     Should Match Regexp  ${contents}  Type:[ ]*core | 
 | 444 |  | 
 | 445 |     # Clean extracted dump files. | 
 | 446 |     Remove Files  output  output.zst | 
 | 447 |     Remove Directory  ${extracted_dump_folder}  True | 
 | 448 |  | 
 | 449 |  | 
| manashsarma | f0f2995 | 2023-11-16 23:48:01 -0600 | [diff] [blame] | 450 | Verify Core Watchdog Initiated BMC Dump | 
 | 451 |     [Documentation]  Verify core watchdog timeout initiated BMC dump. | 
 | 452 |     [Tags]  Verify_Core_Watchdog_Initiated_BMC_Dump | 
 | 453 |  | 
 | 454 |     Redfish Delete All BMC Dumps | 
 | 455 |     Redfish Power Off  stack_mode=skip | 
 | 456 |  | 
 | 457 |     # Trigger watchdog timeout. | 
 | 458 |     Redfish Initiate Auto Reboot  2000 | 
 | 459 |  | 
 | 460 |     # Wait for BMC dump to get generated after injecting watchdog timeout. | 
 | 461 |     Wait Until Keyword Succeeds  4 min  20 sec  Is BMC Dump Available | 
 | 462 |  | 
 | 463 |     # Verify that only one BMC dump is available. | 
 | 464 |     ${dump_entry_list}=  Get BMC Dump Entries | 
 | 465 |     ${length}=  Get length  ${dump_entry_list} | 
 | 466 |     Should Be Equal As Integers  ${length}  ${1} | 
 | 467 |  | 
 | 468 |  | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 469 | *** Keywords *** | 
 | 470 |  | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 471 | Download BMC Dump | 
 | 472 |     [Documentation]  Download BMC dump and verify its size. | 
 | 473 |     [Arguments]  ${dump_id} | 
 | 474 |  | 
 | 475 |     # Description of argument(s): | 
 | 476 |     # dump_id                An integer value that identifies a particular dump (e.g. 1, 3). | 
 | 477 |  | 
| Yi Hu | c32434a | 2024-01-11 17:33:10 -0800 | [diff] [blame] | 478 |     ${resp}=  Redfish.Get  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_id} | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 479 |     ${redfish_bmc_dump_size}=  Set Variable  ${resp.dict["AdditionalDataSizeBytes"]} | 
 | 480 |  | 
 | 481 |     Initialize OpenBMC | 
 | 482 |     ${headers}=  Create Dictionary  Content-Type=application/octet-stream  X-Auth-Token=${XAUTH_TOKEN} | 
 | 483 |  | 
| Yi Hu | c32434a | 2024-01-11 17:33:10 -0800 | [diff] [blame] | 484 |     ${ret}=  GET On Session  openbmc  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries/${dump_id}/attachment  headers=${headers} | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 485 |  | 
 | 486 |     Should Be Equal As Numbers  ${ret.status_code}  200 | 
 | 487 |  | 
 | 488 |     Create Binary File  BMC_dump.tar.gz  ${ret.content} | 
 | 489 |     ${downloaded_dump_size}=  Get File Size  BMC_dump.tar.gz | 
 | 490 |     Should Be Equal  ${downloaded_dump_size}  ${redfish_bmc_dump_size} | 
| George Keishing | 409df05 | 2024-01-17 22:36:14 +0530 | [diff] [blame] | 491 |     RETURN  BMC_dump.tar.gz | 
| manashsarma | da7fd92 | 2023-10-05 08:26:13 -0500 | [diff] [blame] | 492 |  | 
 | 493 |  | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 494 | Extract BMC Dump | 
 | 495 |     [Documentation]  Extract BMC dump from the tar file and returns the name of | 
 | 496 |     ...  extracted folder like BMCDUMP.XXXXXXX.0000070.20230706063841. | 
 | 497 |     [Arguments]  ${filename}   ${bmc_dump_timestamp} | 
 | 498 |  | 
 | 499 |     # Description of argument(s): | 
 | 500 |     # filename                name of BMC dump tar file. | 
 | 501 |     # bmc_dump_timestamp      timestamp of generated BMC dump. | 
 | 502 |  | 
| manashsarma | fcc14df | 2023-09-20 11:37:50 -0500 | [diff] [blame] | 503 |     OperatingSystem.File Should Exist  ${filename} | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 504 |     ${rc}=  Run And Return RC  dd if=${filename} of=output.zst bs=1 skip=628 | 
 | 505 |     Should Be True  0 == ${rc} | 
 | 506 |  | 
 | 507 |     ${rc}=  Run And Return RC  zstd -d output.zst | 
 | 508 |     Should Be True  0 == ${rc} | 
 | 509 |  | 
 | 510 |     ${rc}=  Run And Return RC  tar -xvf output | 
 | 511 |     Should Be True  0 == ${rc} | 
 | 512 |  | 
 | 513 |     # Find the extracted dump folder identified with BMCDUMP as prefix and | 
 | 514 |     # timestamp of dump generation where timestamp format is : 2023-09-27T08:30:17.000000+00:00. | 
 | 515 |     ${var}=  Fetch From Left  ${bmc_dump_timestamp}  . | 
 | 516 |     ${var}=  Remove String  ${var}  -  T  : | 
 | 517 |     ${bmc_extraction_folders}=  OperatingSystem.List Directories In Directory  .  BMCDUMP*${var} | 
 | 518 |     ${cnt}=  Get length  ${bmc_extraction_folders} | 
 | 519 |     should be equal as numbers  ${cnt}  1 | 
 | 520 |  | 
| George Keishing | 409df05 | 2024-01-17 22:36:14 +0530 | [diff] [blame] | 521 |     RETURN  ${bmc_extraction_folders}[0] | 
| manashsarma | 1202ffe | 2023-09-22 09:01:18 -0500 | [diff] [blame] | 522 |  | 
 | 523 |  | 
| Rahul Maheshwari | bcefdf2 | 2020-10-16 07:51:34 -0500 | [diff] [blame] | 524 | Get BMC Dump Entries | 
 | 525 |     [Documentation]  Return BMC dump ids list. | 
 | 526 |  | 
| ganesanb | 4d43028 | 2023-04-27 14:33:23 +0000 | [diff] [blame] | 527 |     ${dump_uris}=  redfish_utils.get_member_list  /redfish/v1/Managers/${MANAGER_ID}/LogServices/Dump/Entries | 
| Rahul Maheshwari | bcefdf2 | 2020-10-16 07:51:34 -0500 | [diff] [blame] | 528 |     ${dump_ids}=  Create List | 
 | 529 |  | 
 | 530 |     FOR  ${dump_uri}  IN  @{dump_uris} | 
 | 531 |       ${dump_id}=  Fetch From Right  ${dump_uri}  / | 
 | 532 |       Append To List  ${dump_ids}  ${dump_id} | 
 | 533 |     END | 
 | 534 |  | 
| George Keishing | 409df05 | 2024-01-17 22:36:14 +0530 | [diff] [blame] | 535 |     RETURN  ${dump_ids} | 
| Rahul Maheshwari | bcefdf2 | 2020-10-16 07:51:34 -0500 | [diff] [blame] | 536 |  | 
 | 537 |  | 
| manashsarma | 633cac9 | 2022-11-25 03:27:03 -0600 | [diff] [blame] | 538 | Is BMC Dump Available | 
 | 539 |     [Documentation]  Verify if BMC dump is available. | 
 | 540 |  | 
 | 541 |     ${dump_entries}=  Get BMC Dump Entries | 
 | 542 |  | 
 | 543 |     # Verifying that BMC dump is available. | 
 | 544 |     ${length}=  Get length  ${dump_entries} | 
 | 545 |     Should Be True  0 < ${length} | 
 | 546 |  | 
 | 547 |  | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 548 | Get Disk Usage For Dumps | 
 | 549 |     [Documentation]  Return disk usage in kilobyte for BMC dumps. | 
 | 550 |  | 
| George Keishing | 952bb0f | 2022-12-12 03:13:35 -0600 | [diff] [blame] | 551 |     ${usage_output}  ${stderr}  ${rc}=  BMC Execute Command  du -s ${BMC_DUMP_COLLECTOR_PATH} | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 552 |  | 
 | 553 |     # Example of output from above BMC cli command. | 
 | 554 |     # $ du -s /var/lib/phosphor-debug-collector/dumps | 
 | 555 |     # 516    /var/lib/phosphor-debug-collector/dumps | 
 | 556 |  | 
 | 557 |     ${usage_output}=  Fetch From Left  ${usage_output}  / | 
 | 558 |     ${usage_output}=  Convert To Integer  ${usage_output} | 
 | 559 |  | 
| George Keishing | 409df05 | 2024-01-17 22:36:14 +0530 | [diff] [blame] | 560 |     RETURN  ${usage_output} | 
| Rahul Maheshwari | d709c8d | 2020-11-01 23:03:51 -0600 | [diff] [blame] | 561 |  | 
 | 562 |  | 
| Rahul Maheshwari | 2568f87 | 2020-09-23 01:03:39 -0500 | [diff] [blame] | 563 | Test Teardown Execution | 
 | 564 |     [Documentation]  Do test teardown operation. | 
 | 565 |  | 
 | 566 |     FFDC On Test Case Fail | 
 | 567 |     Close All Connections |