HewlettPackard / python-ilorest-library

Python library for interacting with devices which support a Redfish Service
Apache License 2.0
181 stars 89 forks source link

Trouble setting UefiTargetBootSourceOverride on Gen 9 server #123

Closed mirceahusz closed 2 years ago

mirceahusz commented 2 years ago

I'm having trouble setting UefiTargetBootSourceOverride on a Gen 9 machine. Here is in a nutshell the configuration: One interface gets set for NetworkBoot, and the rest get Disabled. UrlBootFile gets set to "http://internal.server/ipxe.efi"

For a manual verification step, I powered up the server, I hit F11, pick "URL File: http://internal.server/ipxe.efi" and it loads the image. So all is good.

Now wanting to do the same using the python api, I see that PersistentBootConfigOrder lists ['Unknown.Unknown.1', 'Unknown.Unknown.2', 'Generic.USB.1.1', 'NIC.Slot.1.1.IPv4', 'File.URL.1.1']

Next, looking at BootSources, the last entry is probably the one I want: {'BootString': 'URL File : http://internal.server/ipxe.efi ', 'CorrelatableID': 'Uri(http://internal.server/ipxe.efi)', 'StructuredBootString': 'File.URL.1.1', 'UEFIDevicePath': 'Uri(http://internal.server/ipxe.efi)'}

First BootSourceOverrideTarget = 'UefiTarget' is set, however when I set UefiTargetBootSourceOverride = "File.URL.1.1" it returns "[{'MessageArgs': ['Uri(http://internal.server/ipxe.efi)', 'UefiTargetBootSourceOverride'], 'MessageId': 'Base.0.10.PropertyValueNotInList'}]"

I also tried setting UefiTargetBootSourceOverride to 'Uri(http://internal.server/ipxe.efi)' which is its UEFIDevicePath, with no difference, getting the same error message. The reference for UefiTargetBootSourceOverride says to set it to the UEFI device path.

Any pointers as to which PropertyValueNotInList it's complaining about ?

kaviyajm commented 2 years ago

Hi @mirceahusz,

Can you please share which URI you are trying, also please share which method you are using (POST / PATCH), can share more detail on this.

rajeevkallur commented 2 years ago

@mirceahusz , The documentation reference is at https://hewlettpackard.github.io/ilo-rest-api-docs/ilo5/#base-1-4-propertyvaluenotinlist