xref: /openbmc/openbmc-test-automation/systest/collection/bmc_collect_esels.robot (revision dec7661876c6ca9f2eb1b684762c31b58d86f367)
1d806cc06SJoy Onyerikwu*** Settings ***
2d806cc06SJoy OnyerikwuDocumentation       BMC server health, collect eSELs.
3d806cc06SJoy Onyerikwu
4d806cc06SJoy Onyerikwu# Test Parameters:
5d806cc06SJoy Onyerikwu# OPENBMC_HOST      The BMC host name or IP address.
6d806cc06SJoy Onyerikwu
7d806cc06SJoy OnyerikwuResource            ../../lib/bmc_redfish_resource.robot
8d806cc06SJoy OnyerikwuResource            ../../lib/openbmc_ffdc.robot
9d806cc06SJoy Onyerikwu
10d806cc06SJoy OnyerikwuSuite Setup         Suite Setup Execution
11d806cc06SJoy OnyerikwuSuite Teardown      Suite Teardown Execution
12d806cc06SJoy OnyerikwuTest Setup          Printn
13d806cc06SJoy Onyerikwu
14d806cc06SJoy Onyerikwu*** Variables ***
15d806cc06SJoy Onyerikwu${QUIET}                       ${1}
16d806cc06SJoy Onyerikwu${error_logs_flagged_rest}     Rest error log collection excluded
17d806cc06SJoy Onyerikwu${event_logs_flagged_redfish}  Redfish event log collection excluded
18d806cc06SJoy Onyerikwu${rest_error_logs}             Rest error log collection excluded
19d806cc06SJoy Onyerikwu${redfish_event_logs}          Redfish error log collection excluded
20d806cc06SJoy Onyerikwu
21d806cc06SJoy Onyerikwu*** Test Cases ***
22d806cc06SJoy Onyerikwu
23d806cc06SJoy OnyerikwuRest Collect eSELs
24d806cc06SJoy Onyerikwu    [Documentation]  Collect eSEL using the OpenBMC Rest API.
25d806cc06SJoy Onyerikwu    [Tags]  Rest_Collect_eSELs  rest
26858d4108SGeorge Keishing    [Teardown]  FFDC On Test Case Fail
27d806cc06SJoy Onyerikwu
28d806cc06SJoy Onyerikwu    ${error_logs}=  Get Error Logs  ${QUIET}
29d806cc06SJoy Onyerikwu    ${rest_error_logs}=  gen_robot_print.Sprint Vars  error_logs
30d806cc06SJoy Onyerikwu    Set Suite Variable  ${rest_error_logs}
31d806cc06SJoy Onyerikwu    Log To Console  ${rest_error_logs}
32d806cc06SJoy Onyerikwu
33d806cc06SJoy Onyerikwu    # Filter out informational error logs.
34d806cc06SJoy Onyerikwu    ${non_informational_error_logs}=  Filter Struct  ${error_logs}  [('Severity', '\.Informational$')]
35d806cc06SJoy Onyerikwu    ...  regex=1  invert=1
36d806cc06SJoy Onyerikwu    ${error_logs_flagged_rest}=  gen_robot_print.Sprint Vars  non_informational_error_logs
37d806cc06SJoy Onyerikwu    Set Suite Variable  ${error_logs_flagged_rest}
38d806cc06SJoy Onyerikwu
39d806cc06SJoy Onyerikwu
40d806cc06SJoy OnyerikwuRedfish Collect eSELs
41d806cc06SJoy Onyerikwu    [Documentation]  Collect eSEL with Redfish.
42d806cc06SJoy Onyerikwu    [Tags]  Redfish_Collect_eSELs  redfish
43d806cc06SJoy Onyerikwu    [Setup]  Redfish.Login
44d806cc06SJoy Onyerikwu    [Teardown]  Redfish Test Teardown Execution
45d806cc06SJoy Onyerikwu
46d806cc06SJoy Onyerikwu    ${redfish_event_logs}=  Get Event Logs
47d806cc06SJoy Onyerikwu    ${redfish_event_logs}=  gen_robot_print.Sprint Vars  redfish_event_logs
48d806cc06SJoy Onyerikwu    Set Suite Variable  ${redfish_event_logs}
49d806cc06SJoy Onyerikwu    Log To Console  ${redfish_event_logs}
50d806cc06SJoy Onyerikwu    ${event_logs_flagged_redfish}=  Get Event Logs Not Ok
51d806cc06SJoy Onyerikwu    ${event_logs_flagged_redfish}=  gen_robot_print.Sprint Vars  event_logs_flagged_redfish
52d806cc06SJoy Onyerikwu    Set Suite Variable  ${event_logs_flagged_redfish}
53d806cc06SJoy Onyerikwu
54d806cc06SJoy Onyerikwu
55d806cc06SJoy Onyerikwu*** Keywords ***
56d806cc06SJoy Onyerikwu
57d806cc06SJoy OnyerikwuSuite Setup Execution
58d806cc06SJoy Onyerikwu    [Documentation]  Do test suite setup tasks.
59d806cc06SJoy Onyerikwu
60d806cc06SJoy Onyerikwu    Set Log Level  DEBUG
61*dec76618SGeorge Keishing    Redfish Power On  stack_mode=skip
62d806cc06SJoy Onyerikwu
63d806cc06SJoy Onyerikwu
64d806cc06SJoy OnyerikwuSuite Teardown Execution
65d806cc06SJoy Onyerikwu    [Documentation]  Do suite teardown tasks. Log error and event logs collected.
66d806cc06SJoy Onyerikwu
67d806cc06SJoy Onyerikwu    Log Many  ${rest_error_logs}  ${redfish_event_logs}
68d806cc06SJoy Onyerikwu    Log  Flagged error logs found via REST:${\n}${error_logs_flagged_rest}  console=true
69d806cc06SJoy Onyerikwu    Log  Flagged events logs found via Redfish:${\n}${event_logs_flagged_redfish}  console=true
70d806cc06SJoy Onyerikwu
71d806cc06SJoy Onyerikwu
72d806cc06SJoy OnyerikwuRedfish Test Teardown Execution
73d806cc06SJoy Onyerikwu    [Documentation]  Do the post test teardown for redfish.
74d806cc06SJoy Onyerikwu
75d806cc06SJoy Onyerikwu    Redfish.Logout
76858d4108SGeorge Keishing    FFDC On Test Case Fail
77