On this page
dellemc.openmanage.idrac_firmware – Firmware update from a repository on a network share (CIFS, NFS, HTTP, HTTPS, FTP)
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.idrac_firmware.
New in version 2.1.0: of dellemc.openmanage
Synopsis
- Update the Firmware by connecting to a network share (CIFS, NFS, HTTP, HTTPS, FTP) that contains a catalog of available updates.
 - Network share should contain a valid repository of Update Packages (DUPs) and a catalog file describing the DUPs.
 - All applicable updates contained in the repository are applied to the system.
 - This feature is available only with iDRAC Enterprise License.
 
Requirements
The below requirements are needed on the host that executes this module.
- omsdk
 - python >= 2.7.5
 
Parameters
| Parameter | Choices/Defaults | Comments | 
|---|---|---|
| apply_update
        
        boolean
         | 
      
       
  | 
      
        
        If apply_update is set to  
       True, then the packages are applied.
       
        If apply_update is set to  False, no updates are applied, and a catalog report of packages is generated and returned.
        | 
     
| catalog_file_name
        
        string
         | 
      Default: 
        "Catalog.xml"
         | 
      
        
        Catalog file name relative to the share_name.
         | 
     
| idrac_ip
        
        string / required
         | 
      
        
        iDRAC IP Address.
         | 
     |
| idrac_password
        
        string / required
         | 
      
        
        iDRAC user password.
        
       aliases: idrac_pwd  | 
     |
| idrac_port
        
        integer
         | 
      Default: 
        443
         | 
      
        
        iDRAC port.
         | 
     
| idrac_user
        
        string / required
         | 
      
        
        iDRAC username.
         | 
     |
| ignore_cert_warning
        
        boolean
         | 
      
       
  | 
      
        
        Specifies if certificate warnings are ignored when HTTPS share is used. If  True option is set, then the certificate warnings are ignored.
        | 
     
| job_wait
        
        boolean
         | 
      
       
  | 
      
        
        Whether to wait for job completion or not.
         | 
     
| reboot
        
        boolean
         | 
      
       
  | 
      
        
        Provides the option to apply the update packages immediately or in the next reboot.
        
       
        If reboot is set to  
       True, then the packages are applied immediately.
       
        If reboot is set to  
       False, then the packages are staged and applied in the next reboot.
       
        Packages that do not require a reboot are applied immediately irrespective of I (reboot).
         | 
     
| share_mnt
        
        string
         | 
      
        
        Local mount path of the network share with read-write permission for ansible user.
        
       
        This option is not applicable for HTTP, HTTPS, and FTP shares.
         | 
     |
| share_name
        
        string / required
         | 
      
        
        Network share path of update repository. CIFS, NFS, HTTP, HTTPS and FTP share types are supported.
         | 
     |
| share_password
        
        string
         | 
      
        
        Network share user password. This option is mandatory for CIFS Network Share.
        
       aliases: share_pwd  | 
     |
| share_user
        
        string
         | 
      
        
        Network share user in the format 'user@domain' or 'domain\\user' if user is part of a domain else 'user'. This option is mandatory for CIFS Network Share.
         | 
     
Notes
Note
- Run this module from a system that has direct access to DellEMC iDRAC.
 - This module supports 
check_mode. 
Examples
---
- name: Update firmware from repository on a NFS Share
  dellemc.openmanage.idrac_firmware:
       idrac_ip: "192.168.0.1"
       idrac_user: "user_name"
       idrac_password: "user_password"
       share_name: "192.168.0.0:/share"
       reboot: True
       job_wait: True
       apply_update: True
       catalog_file_name: "Catalog.xml"
- name: Update firmware from repository on a CIFS Share
  dellemc.openmanage.idrac_firmware:
       idrac_ip: "192.168.0.1"
       idrac_user: "user_name"
       idrac_password: "user_password"
       share_name: "full_cifs_path"
       share_user: "share_user"
       share_password: "share_password"
       reboot: True
       job_wait: True
       apply_update: True
       catalog_file_name: "Catalog.xml"
- name: Update firmware from repository on a HTTP
  dellemc.openmanage.idrac_firmware:
       idrac_ip: "192.168.0.1"
       idrac_user: "user_name"
       idrac_password: "user_password"
       share_name: "http://downloads.dell.com"
       reboot: True
       job_wait: True
       apply_update: True
- name: Update firmware from repository on a HTTPS
  dellemc.openmanage.idrac_firmware:
       idrac_ip: "192.168.0.1"
       idrac_user: "user_name"
       idrac_password: "user_password"
       share_name: "https://downloads.dell.com"
       reboot: True
       job_wait: True
       apply_update: True
- name: Update firmware from repository on a FTP
  dellemc.openmanage.idrac_firmware:
       idrac_ip: "192.168.0.1"
       idrac_user: "user_name"
       idrac_password: "user_password"
       share_name: "ftp://ftp.dell.com"
       reboot: True
       job_wait: True
       apply_update: True
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| msg
        
        string
         | 
      always | 
        
        Overall firmware update status.
         Sample:
        
       
        Successfully updated the firmware.
         | 
     
| update_status
        
        dictionary
         | 
      success | 
        
        Firmware Update job and progress details from the iDRAC.
         Sample:
        
       
        {'InstanceID': 'JID_XXXXXXXXXXXX', 'JobStartTime': 'NA', 'JobState': 'Completed', 'Message': 'Job completed successfully.', 'MessageId': 'REDXXX', 'Name': 'Repository Update', 'Status': 'Success'}
         | 
     
Authors
- Rajeev Arakkal (@rajeevarakkal)
 - Felix Stephen (@felixs88)
 
© 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/idrac_firmware_module.html