You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The validator fails to run when a profile does not contain a Resouces object. The Interop Profiles spec does not appear to require a Resources object.
Program finished prematurely: argument of type 'NoneType' is not iterable
Traceback (most recent call last):
File "/root/redfish_interop/RedfishInteropValidator.py", line 10, in <module>
status_code, lastResultsPage, exit_string = main()
File "/root/redfish_interop/redfish_interop_validator/RedfishInteropValidator.py",
line 229, in main
success, _, resultsNew, _, _ = validateURITree('/redfish/v1/', profile,
'ServiceRoot', expectedJson=jsonData)
File "/root/redfish_interop/redfish_interop_validator/validateResource.py", line 261,
in validateURITree
validateSingleURI(URI, profile, uriName, expectedType, expectedSchema, expectedJson)
File "/root/redfish_interop/redfish_interop_validator/validateResource.py", line 128,
in validateSingleURI
if SchemaType not in profile_resources:
TypeError: argument of type 'NoneType' is not iterable
Traceback (most recent call last):
File "/root/redfish_interop/RedfishInteropValidator.py", line 10, in <module>
status_code, lastResultsPage, exit_string = main()
File "/root/redfish_interop/redfish_interop_validator/RedfishInteropValidator.py",
line 229, in main
success, _, resultsNew, _, _ = validateURITree('/redfish/v1/', profile, 'ServiceRoot',
expectedJson=jsonData)
File "/root/redfish_interop/redfish_interop_validator/validateResource.py", line 261,
in validateURITree
validateSingleURI(URI, profile, uriName, expectedType, expectedSchema, expectedJson)
File "/root/redfish_interop/redfish_interop_validator/validateResource.py", line 128,
in validateSingleURI
if SchemaType not in profile_resources:
TypeError: argument of type 'NoneType' is not iterable
Use Cases
Example 1: This "base" profile only requires other profiles.
Example 2: This profile documents required message registries. While the validator would probably not be run against this use case, it serves to illustrate why a profile might not have a Resources object.
Yes, I agree this is a bug, as there is no requirement for a Resources object in a profile. Although we certainly expected it, and this is a corner case that was obviously not covered...
Note that a profile that has no resource requirements (due to a bundling of required profiles as shown in case 1 above), you could add a requirement on "ServiceRoot" and at least one required property (such as SessionService) so that the tool functions as-is, but doesn't actually create any phantom requirements (because any implementation would pass that test).
The validator fails to run when a profile does not contain a Resouces object. The Interop Profiles spec does not appear to require a Resources object.
Use Cases
Example 1: This "base" profile only requires other profiles.
Example 2: This profile documents required message registries. While the validator would probably not be run against this use case, it serves to illustrate why a profile might not have a Resources object.
@jautor may have some input on this based on our recent conversation.
The text was updated successfully, but these errors were encountered: