***Settings*** Documentation Generic REST/SSH/IPMI stress buster program. Library ../lib/jobs_processing.py Resource ../lib/rest_client.robot Resource ../lib/connection_client.robot Resource ../lib/ipmi_client.robot Resource ../lib/utils.robot Resource ../lib/openbmc_ffdc.robot Test Teardown FFDC On Test Case Fail ***Variables*** # Caller can specify a value for the following using -v parms # Currently REST/SSH/IPMI session allowed. ${REST_BUSTER_MAX} ${16} ${SSH_BUSTER_MAX} ${16} ${IPMI_BUSTER_MAX} ${5} ***Test Cases*** Stress BMC REST Server [Documentation] Execute maximum allowed REST operation. [Tags] Stress_BMC_REST_Server ${dict}= Execute Process ... ${REST_BUSTER_MAX} REST Enumerate Request On BMC Dictionary Should Not Contain Value ${dict} False ... msg=One or more REST operations has failed. Stress BMC SSH Server [Documentation] Execute maximum allowed SSH operation. [Tags] Stress_BMC_SSH_Server ${dict}= Execute Process ... ${SSH_BUSTER_MAX} SSH Connect And Execute Command Dictionary Should Not Contain Value ${dict} False ... msg=One or more SSH operations has failed. Stress BMC IPMI Server [Documentation] Execute maximum allowed IPMI operation. [Tags] Stress_BMC_IPMI_Server ${dict}= Execute Process ${IPMI_BUSTER_MAX} IPMI Check Status Dictionary Should Not Contain Value ${dict} False ... msg=One or more IPMI operations has failed. ***Keywords*** REST Enumerate Request On BMC [Documentation] Execute REST GET operation. # Create REST session. Create Session openbmc ${AUTH_URI} ${headers}= Create Dictionary Content-Type=application/json @{credentials}= Create List ${OPENBMC_USERNAME} ${OPENBMC_PASSWORD} ${data}= Create Dictionary data=@{credentials} ${resp}= Post Request openbmc /login data=${data} headers=${headers} Should Be Equal As Strings ${resp.status_code} ${HTTP_OK} # Trigger GET REST enumeration. ${resp}= Get Request openbmc /xyz/openbmc_project/software/enumerate Should Be Equal As Strings ${resp.status_code} ${HTTP_OK} Delete All Sessions SSH Connect And Execute Command [Documentation] Execute SSH command execution operation. Open Connection And Log In Execute Command On BMC df -h Close Connection IPMI Check Status [Documentation] Execute IPMI command execution operation. Run IPMI Standard Command chassis status