Note
This plugin is part of the dellemc.openmanage collection (version 3.6.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
.
To use it in a playbook, specify: dellemc.openmanage.ome_firmware
.
New in version 2.0.0: of dellemc.openmanage
The below requirements are needed on the host that executes this module.
Parameter | Choices/Defaults | Comments |
---|---|---|
baseline_name string | Enter the baseline name to update the firmware of all the devices or groups of devices against the available compliance report. The firmware update can also be done by providing the baseline name and the path to the single DUP file. To update multiple baselines at once, provide the baseline names separated by commas.
baseline_names is mutually exclusive with device_group_names, device_id and device_service_tag. | |
device_group_names list / elements=string | Enter the name of the group to update the firmware of all the devices within the group.
device_group_names is mutually exclusive with device_id and device_service_tag. | |
device_id list / elements=integer | List of targeted device ids. Either device_id or device_service_tag can be used individually or together.
device_id is mutually exclusive with device_group_names. | |
device_service_tag list / elements=string | List of targeted device service tags. Either device_id or device_service_tag can be used individually or together.
device_service_tag is mutually exclusive with device_group_names. | |
dup_file string | Executable file to apply on the targets. | |
hostname string / required | OpenManage Enterprise or OpenManage Enterprise Modular IP address or hostname. | |
password string / required | OpenManage Enterprise or OpenManage Enterprise Modular password. | |
port integer | Default: 443 | OpenManage Enterprise or OpenManage Enterprise Modular HTTPS port. |
username string / required | OpenManage Enterprise or OpenManage Enterprise Modular username. |
Note
check_mode
.--- - name: Update firmware from DUP file using device ids dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" device_id: - 11111 - 22222 dup_file: "/path/Chassis-System-Management_Firmware_6N9WN_WN64_1.00.01_A00.EXE" - name: Update firmware from a DUP file using a device service tags dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" device_service_tag: - KLBR111 - KLBR222 dup_file: "/path/Network_Firmware_NTRW0_WN64_14.07.07_A00-00_01.EXE" - name: Update firmware from a DUP file using a device group names dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" device_group_names: - servers dup_file: "/path/BIOS_87V69_WN64_2.4.7.EXE" - name: Update firmware using baseline name dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" baseline_name: baseline_devices - name: Update firmware from a DUP file using a baseline names dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" baseline_name: "baseline_devices, baseline_groups" dup_file: "/path/BIOS_87V69_WN64_2.4.7.EXE"
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
error_info dictionary | on HTTP error | Details of the HTTP Error. Sample: {'error': {'@Message.ExtendedInfo': [{'Message': 'Unable to process the request because an error occurred.', 'MessageArgs': [], 'MessageId': 'GEN1234', 'RelatedProperties': [], 'Resolution': 'Retry the operation. If the issue persists, contact your system administrator.', 'Severity': 'Critical'}], 'code': 'Base.1.0.GeneralError', 'message': 'A general error has occurred. See ExtendedInfo for more information.'}} |
msg string | always | Overall firmware update status. Sample: Successfully submitted the firmware update job. |
update_status dictionary | success | Firmware Update job and progress details from the OME. Sample: {'Builtin': False, 'CreatedBy': 'user', 'Editable': True, 'EndTime': 'None', 'Id': 11117, 'JobDescription': 'dup test', 'JobName': 'Firmware Update Task', 'JobStatus': {'Id': 1111, 'Name': 'New'}, 'JobType': {'Id': 5, 'Internal': False, 'Name': 'Update_Task'}, 'LastRun': 'None', 'LastRunStatus': {'Id': 1111, 'Name': 'NotRun'}, 'NextRun': 'None', 'Params': [{'JobId': 11111, 'Key': 'signVerify', 'Value': 'true'}, {'JobId': 11112, 'Key': 'stagingValue', 'Value': 'false'}, {'JobId': 11113, 'Key': 'complianceUpdate', 'Value': 'false'}, {'JobId': 11114, 'Key': 'operationName', 'Value': 'INSTALL_FIRMWARE'}], 'Schedule': 'startnow', 'StartTime': 'None', 'State': 'Enabled', 'Targets': [{'Data': 'DCIM:INSTALLED#701__NIC.Mezzanine.1A-1-1=1111111111111', 'Id': 11115, 'JobId': 11116, 'TargetType': {'Id': 1000, 'Name': 'DEVICE'}}], 'UpdatedBy': 'None', 'Visible': True} |
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/dellemc/openmanage/ome_firmware_module.html