dellemc.openmanage.redfish_firmware module – To perform a component firmware update using the image file available on the local or remote system
Note
This module is part of the dellemc.openmanage collection (version 9.9.0).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install dellemc.openmanage
.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: dellemc.openmanage.redfish_firmware
.
New in dellemc.openmanage 2.1.0
Synopsis
This module allows the firmware update of only one component at a time. If the module is run for more than one component, an error message is returned.
Depending on the component, the firmware update is applied after an automatic or manual reboot.
Requirements
The below requirements are needed on the host that executes this module.
python >= 3.9.6
urllib3
Parameters
Parameter |
Comments |
---|---|
IP address of the target out-of-band controller. For example- <ipaddress>:<port>. |
|
The Privacy Enhanced Mail (PEM) file that contains a CA certificate to be used for the validation. |
|
Firmware Image location URI or local path. For example- http://<web_address>/components.exe or /home/firmware_repo/component.exe. |
|
Provides the option to wait for job completion. Choices:
|
|
The maximum wait time of job_wait in seconds. The job is tracked only for this duration. This option is applicable when job_wait is Note: If a firmware update needs a reboot, the job will get scheduled and waits for no of seconds specfied in job_wait_time. to reduce the wait time either give job_wait_time minimum or make job_waitas false and retrigger. Default: |
|
Password of the target out-of-band controller. If the password is not provided, then the environment variable Example: export IDRAC_PASSWORD=password |
|
The socket level timeout in seconds. Default: |
|
Protocol used to transfer the firmware image file. Applicable for URI based update. Choices:
|
|
Username of the target out-of-band controller. If the username is not provided, then the environment variable Example: export IDRAC_USERNAME=username |
|
If Configure Prior to collection version Choices:
|
|
Authentication token. If the x_auth_token is not provided, then the environment variable Example: export IDRAC_X_AUTH_TOKEN=x_auth_token |
Notes
Note
Run this module from a system that has direct access to Redfish APIs.
This module supports both IPv4 and IPv6 addresses.
This module supports only iDRAC9 and above.
This module does not support
check_mode
.
Examples
---
- name: Update the firmware from a single executable file available in a HTTP protocol
dellemc.openmanage.redfish_firmware:
baseuri: "192.168.0.1"
username: "user_name"
password: "user_password"
ca_path: "/path/to/ca_cert.pem"
image_uri: "http://192.168.0.2/firmware_repo/component.exe"
transfer_protocol: "HTTP"
- name: Update the firmware from a single executable file available in a HTTP protocol with job_Wait
dellemc.openmanage.redfish_firmware:
baseuri: "192.168.0.1"
username: "user_name"
password: "user_password"
ca_path: "/path/to/ca_cert.pem"
image_uri: "http://192.168.0.2/firmware_repo/component.exe"
transfer_protocol: "HTTP"
job_wait: true
job_wait_timeout: 600
- name: Update the firmware from a single executable file available in a local path
dellemc.openmanage.redfish_firmware:
baseuri: "192.168.0.1"
username: "user_name"
password: "user_password"
ca_path: "/path/to/ca_cert.pem"
image_uri: "/home/firmware_repo/component.exe"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
Details of http error. Returned: on http error Sample: |
|
Overall status of the firmware update task. Returned: always Sample: |
|
Returns ID and URI of the created task. Returned: success Sample: |