---
- hosts: idrac
  connection: local
  name: Update Firmware Inventory
  gather_facts: False

  collections:
    - dellemc.openmanage

  tasks:
  - name: Update firmware from repository on a HTTP/HTTP/FTP repository
    idrac_firmware:
       idrac_ip: "{{ idrac_ip }}"
       idrac_user: "{{ idrac_user }}"
       idrac_password: "{{ idrac_password}}"
       share_name: "https://downloads.dell.com"
       reboot: True
       job_wait: True
       apply_update: True

  - name: Update firmware from repository on a internally hosted HTTP repository.
    idrac_firmware:
       idrac_ip: "{{ idrac_ip }}"
       idrac_user: "{{ idrac_user }}"
       idrac_password: "{{ idrac_password}}"
       share_name: "http://192.168.0.1/path_to_folder/"
       reboot: True
       job_wait: True
       apply_update: True
       catalog_file_name: "Catalog.xml"

  - name: Update firmware from repository on a NFS Share
    idrac_firmware:
       idrac_ip: "{{ idrac_ip }}"
       idrac_user: "{{ idrac_user }}"
       idrac_password: "{{ idrac_password}}"
       share_name: "192.168.0.1:/complete_share_path"
       reboot: True
       job_wait: True
       apply_update: True
       catalog_file_name: "Catalog.xml"

  - name: Update firmware from repository on a CIFS Share
    idrac_firmware:
       idrac_ip: "{{ idrac_ip }}"
       idrac_user: "{{ idrac_user }}"
       idrac_password: "{{ idrac_password}}"
       share_name: "\\\\192.168.0.1\\share_path"
       share_user: "{{ share_user }}"
       share_password: "{{ share_password }}"
       share_mnt: "/mnt/cifs_share"
       reboot: False
       job_wait: True
       catalog_file_name: "Catalog.xml"

  - name: Firmware compliance report using HTTPS repository.
    idrac_firmare:
       idrac_ip: "{{ idrac_ip }}"
       idrac_user: "{{ idrac_user }}"
       idrac_password: "{{ idrac_password }}"
       share_name: "https://downloads.dell.com"
       reboot: False
       job_wait: True
       apply_update: False
