Ironic attempt to create a raid config on ProLiant DL385 Gen10 Plus with MR416i-a Gen10+ smart array controller fails with following error:
2024-03-25 16:51:30.921 2774 ERROR ironic.conductor.utils [req-1a949a0d-730e-4c8c-a488-56d9b053cd04 req-28a1df45-167f-44b3-825d-be3c35f522e5 - - - - - -] RAID configuration job failed for node 2r334d7-e29b-4c57-r54f-c7t4t545t31c3. Message: 'Failed to create raid configuration on node 2r334d7-e29b-4c57-r54f-c7t4t545t31c3'.: proliantutils.exception.IloError: The Redfish controller failed to get the SmartStorageConfig controller configurations.
Looks like proliantutils fails to get the SmartStorageConfig in https://opendev.org/x/proliantutils/src/branch/master/proliantutils/redfish/resources/system/system.py#L337
smart_storage_config_identities is not being set in https://opendev.org/x/proliantutils/src/branch/master/proliantutils/redfish/resources/system/system.py#L91
['Oem', 'Hpe', 'SmartStorageConfig'] passed above as a parameter to base.Field constructor does exist in JSON response from the management interface on older server with HPE Smart Array E208i-a SR Gen10 controller:
(bifrost-deploy)[root@sv-seed-vm-0 bifrost-16.1.1.dev17]# curl -ks "https://10.19.1.12/redfish/v1/Systems/1/" -k -u 'admin:pass' | sed 's/\}curl .*/}/' | jq ."Oem"."Hpe"."SmartStorageConfig"
[
{
"@odata.id": "/redfish/v1/systems/1/smartstorageconfig/"
}
]
(bifrost-deploy)[root@sv-seed-vm-0 bifrost-16.1.1.dev17]# curl -ks "https://10.19.1.12/redfish/v1/systems/1/smartstorageconfig/" -k -u 'admin:pass' | sed 's/\}curl .*/}/' | jq
{
"@Redfish.Settings": {...}
}
But is no longer present on newer servers with MR416i-a Gen10+:
(bifrost-deploy)[root@sv-seed-vm-0 bifrost-16.1.1.dev17]# curl -ks "https://10.19.1.72/redfish/v1/Systems/1/" -k -u 'admin:pass' | sed 's/\}curl .*/}/' | jq ."Oem"."Hpe"."SmartStorageConfig"
null