DMTF / Redfish-Service-Validator

The Redfish Service Validator is a Python3 tool for checking conformance of any "device" with a Redfish service interface against Redfish CSDL schema
Other
38 stars 33 forks source link

ERROR RetriesExhaustedError cause tool stop #520

Closed RogerWei0220 closed 1 year ago

RogerWei0220 commented 1 year ago

Version: 2.2.1

We found that tool will stop if URI have some issue, and no html report created on this situation. Is it possible to catch this exception and let html report created anyway? 20221020_1

mraineri commented 1 year ago

It's likely something in the payload of the response is causing the exception. Can you please provide what the service is returning for "/redfish/v1/Fabrics/NVLinkFabric"? With that, we can find the source of the exception and harden the tool appropriately.

mraineri commented 1 year ago

Looking at it a bit more it might be more complicated than the payload; can you rerun with --debugging and send the text file produced?

tomasg2012 commented 1 year ago

From a glance at that code, it's attempting to get a status code from a unsuccessful callResourceURI. Since the function failed, the response object labeled _ would be None. It's old code that uses "success" instead of Exception wrapping, so line 113 would need to check if success is true, otherwise give a status code.

Status is only used for logging reports, so it can be set to anything, and the code could be modified to not use an underscore as a variable name for the response object given.

mraineri commented 1 year ago

@RogerWei0220 were you able to collect the info requested? There is an open PR that has a change Tomas is referring to, but it would be good to get confirmation about things before assuming his fix will address your issue.