Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OnetimeBoot problem #74

Open
mw-0 opened this issue Jul 20, 2018 · 3 comments
Open

OnetimeBoot problem #74

mw-0 opened this issue Jul 20, 2018 · 3 comments

Comments

@mw-0
Copy link

mw-0 commented Jul 20, 2018

Since the last release i can no longer use the onetimeboot with Pxe. When i check the setting after putting any value as the boot value it is always set to UefiTarget. I have rolled back to the older release and it works fine.

@jose-delarosa
Copy link
Contributor

@mw-0, thanks for reporting. Can you please be more specific? Are you on the master branch? What 2 specific releases (or what commit IDs) work and not work? I don't specifically remember doing any updates on this feature...

@mw-0
Copy link
Author

mw-0 commented Jul 20, 2018

I tested on master the same as the example
name: Set one-time boot device to {{ bootdevice }}
redfish:
category: System
command: SetOneTimeBoot
bootdevice: "{{ bootdevice }}"
baseuri: "{{ baseuri }}"
user: "{{ user }}"
password: "{{ password }}"

When i do this the system does not boot to pxe on my r640 and when i check the changed boot parameter it shows as UefiTarget.

I pulled the 5.1 release down and this works as expected. I could see there was some code added for Uefi but i have no time today to check what specifically is the problem here.

@sixela
Copy link

sixela commented May 2, 2019

Turns out I just experienced the exact same issue on a Dell R640 with idrac 3.32.32.32

When using the ansible redfish module like:

    - name: Set One Time boot to PXE
      redfish_command:
        category: Systems
        command: SetOneTimeBoot
        bootdevice: "Pxe"
        baseuri: "{{ redfish_ip }}"
        username: "{{ redfish_username }}"
        password: "{{ redfish_password }}"

The module will update the redfish values under https://<redfish_ip>/redfish/v1/Systems/System.Embedded.1 like

  • BootSourceOverrideTarget: UefiTarget
  • UefiTargetBootSourceOverride: Pxe

But the UEFI target "Pxe" does not exist

I gave up and used a http call instead:

    - name: Set Boot Override to PXE
      uri:
        url: "https://{{ redfish_ip }}/redfish/v1/Systems/System.Embedded.1"
        validate_certs: no
        method: PATCH
        user: "{{ redfish_username }}"
        password: "{{ redfish_password }}"
        headers:
          accept: application/json
          content-type: application/json
        body: '{"Boot":{"BootSourceOverrideTarget": "Pxe"}}'

Which has the expected idrac console-like behavior

Edit: exact same symptoms as described here ansible/ansible#52658

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants