dellemc / dellemc.openmanage / 9.1.0 / module / ome_firmware Update firmware on PowerEdge devices and its components through OpenManage Enterprise | "added in version" 2.0.0 of dellemc.openmanage" Authors: Felix Stephen (@felixs88), Jagadeesh N V (@jagadeeshnv), Abhishek Sinha (@ABHISHEK-SINHA10)dellemc.openmanage.ome_firmware (9.1.0) — module
Install with ansible-galaxy collection install dellemc.openmanage:==9.1.0
collections: - name: dellemc.openmanage version: 9.1.0
This module updates the firmware of PowerEdge devices and all its components through OpenManage Enterprise.
--- - name: Update firmware from DUP file using device ids dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" 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" ca_path: "/path/to/ca_cert.pem" 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" ca_path: "/path/to/ca_cert.pem" 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" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices
- name: Stage firmware for the next reboot using baseline name dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices schedule: StageForNextReboot
- name: "Update firmware using baseline name and components." dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices components: - BIOS
- name: Update firmware of device components from a DUP file using a device ids in a baseline dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices device_id: - 11111 - 22222 components: - iDRAC with Lifecycle Controller
- name: Update firmware of device components from a baseline using a device service tags under a baseline dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices device_service_tag: - KLBR111 - KLBR222 components: - IOM-SAS
- name: Update firmware using baseline name with a device id and required components dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices devices: - id: 12345 components: - Lifecycle Controller - id: 12346 components: - Enterprise UEFI Diagnostics - BIOS
- name: "Update firmware using baseline name with a device service tag and required components." dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices devices: - service_tag: ABCDE12 components: - PERC H740P Adapter - BIOS - service_tag: GHIJK34 components: - OS Drivers Pack
- name: "Update firmware using baseline name with a device service tag or device id and required components." dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices devices: - service_tag: ABCDE12 components: - BOSS-S1 Adapter - PowerEdge Server BIOS - id: 12345 components: - iDRAC with Lifecycle Controller
- name: "Update firmware using baseline name and components and perform Powercycle." dellemc.openmanage.ome_firmware: hostname: "192.168.0.1" username: "username" password: "password" ca_path: "/path/to/ca_cert.pem" baseline_name: baseline_devices components: - BIOS reboot_type: PowerCycle
port: default: 443 description: OpenManage Enterprise or OpenManage Enterprise Modular HTTPS port. type: int ca_path: description: - The Privacy Enhanced Mail (PEM) file that contains a CA certificate to be used for the validation. type: path version_added: 5.0.0 version_added_collection: dellemc.openmanage devices: description: - This option allows to select components on each device for firmware update. - This option is mutually exclusive with I(dup_file), I(device_group_names), I(device_id), and I(device_service_tag). elements: dict suboptions: components: default: [] description: The target components to be updated. If not specified, all applicable device components are considered. elements: str type: list id: description: - The id of the target device to be updated. - This option is mutually exclusive with I(service_tag). type: int service_tag: description: - The service tag of the target device to be updated. - This option is mutually exclusive with I(id). type: str type: list timeout: default: 30 description: The socket level timeout in seconds. type: int version_added: 5.0.0 version_added_collection: dellemc.openmanage dup_file: description: - The path of the Dell Update Package (DUP) file that contains the firmware or drivers required to update the target system device or individual device components. - This is mutually exclusive with I(baseline_name), I(components), and I(devices). type: path hostname: description: OpenManage Enterprise or OpenManage Enterprise Modular IP address or hostname. required: true type: str password: description: - OpenManage Enterprise or OpenManage Enterprise Modular password. - If the password is not provided, then the environment variable C(OME_PASSWORD) is used. - 'Example: export OME_PASSWORD=password' required: true type: str schedule: choices: - RebootNow - StageForNextReboot default: RebootNow description: - Select the schedule for the firmware update. - if C(StageForNextReboot) is chosen, the firmware will be staged and updated during the next reboot of the target device. - if C(RebootNow) will apply the firmware updates immediately. type: str username: description: - OpenManage Enterprise or OpenManage Enterprise Modular username. - If the username is not provided, then the environment variable C(OME_USERNAME) is used. - 'Example: export OME_USERNAME=username' required: true type: str device_id: description: - List of ids of the targeted device. - Either I(device_id) or I(device_service_tag) can be used individually or together. - This option is mutually exclusive with I(device_group_names) and I(devices). elements: int type: list components: default: [] description: - List of components to be updated. - If not provided, all components applicable are considered. - This option is case sensitive. - This is applicable to I(device_service_tag), I(device_id), and I(baseline_name). elements: str type: list reboot_type: choices: - GracefulReboot - GracefulRebootForce - PowerCycle default: GracefulRebootForce description: - This option provides the choices to reboot the server immediately after the firmware update. - This is applicable when I(schedule) is C(RebootNow). - C(GracefulRebootForce) performs a graceful reboot with forced shutdown. - C(GracefulReboot) performs a graceful reboot without forced shutdown. - C(PowerCycle) performs a power cycle for a hard reset on the device. type: str version_added: 8.3.0 version_added_collection: dellemc.openmanage baseline_name: description: - Enter the baseline name to update the firmware of all devices or list of devices that are not complaint. - This option is mutually exclusive with I(dup_file) and I(device_group_names). type: str validate_certs: default: true description: - If C(false), the SSL certificates will not be validated. - Configure C(false) only on personally controlled sites where self-signed certificates are used. - Prior to collection version C(5.0.0), the I(validate_certs) is C(false) by default. type: bool version_added: 5.0.0 version_added_collection: dellemc.openmanage device_group_names: description: - Enter the name of the device group that contains the devices on which firmware needs to be updated. - This option is mutually exclusive with I(device_id) and I(device_service_tag). elements: str type: list device_service_tag: description: - List of service tags of the targeted devices. - Either I(device_id) or I(device_service_tag) can be used individually or together. - This option is mutually exclusive with I(device_group_names) and I(devices). elements: str type: list
error_info: description: Details of the HTTP Error. returned: on 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. type: dict msg: description: Overall firmware update status. returned: always sample: Successfully submitted the firmware update job. type: str update_status: description: The firmware update job and progress details from the OME. returned: success 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=1234567654321 Id: 11115 JobId: 11116 TargetType: Id: 1000 Name: DEVICE UpdatedBy: None Visible: true type: dict