robertdebock.bios_update

Ansible Role: BIOS Update

THIS ROLE HAS BEEN ARCHIVED AS OF DEC 2023.

This role helps you download, extract, and create a bootable USB image for BIOS updates.

GitHub GitLab Downloads Version
github gitlab downloads Version

Example Playbook

Here’s a simple example taken from molecule/default/converge.yml, which is tested whenever updates are made.

---
- name: Converge
  hosts: all
  become: yes
  gather_facts: yes

  roles:
    - role: robertdebock.bios_update
      # Set the URL for the BIOS update; it's often automatically found, 
      # but needs to be set manually in CI environments.
      bios_update_url: "https://download.lenovo.com/pccbbs/mobiles/r02uj70d.iso"
      # In CI, writing to removable media can be tricky, so this disables writing.
      bios_update_write: no

The machine must be prepared first. In CI, this is done using molecule/default/prepare.yml:

---
- name: Prepare
  hosts: all
  become: yes
  gather_facts: no

  roles:
    - role: robertdebock.bootstrap

For additional guidance, see the full explanation and example.

Role Variables

Default variable values are defined in defaults/main.yml:

---
# Default settings for bios_update

# Directory to store the downloaded ISO.
bios_update_temporary_directory: /tmp

# URL of the bootable ISO for the BIOS update.
# Typically, this URL is auto-discovered but can be manually set here.
# bios_update_url: "https://download.lenovo.com/pccbbs/mobiles/r02uj70d.iso"

# The device where the bootable image will be written.
# WARNING: This device will be overwritten.
bios_update_flash_drive: "/dev/sdCHANGEME"

# By default, this role writes to removable media. Can be disabled in CI.
bios_update_write: yes

Requirements

Used Roles

These roles are helpful for preparing your system. You can also prepare your system in your own way.

Requirement GitHub GitLab
robertdebock.bootstrap Build Status GitHub Build Status GitLab

Context

This role works with many others. For more information, check the documentation of these roles.

Here is a visual of related roles: dependencies

Compatibility

This role is tested with the following container images:

Container Tags
EL 8, 9
Debian all
Fedora all
Ubuntu all

The required minimum version of Ansible is 2.12. Tests have been conducted on:

  • Previous version
  • Current version
  • Development version

If you encounter any issues, please report them on GitHub.

License

This role is licensed under Apache-2.0.

Author Information

Created by robertdebock.

If you would like to support my work, please consider sponsoring me.

Informazioni sul progetto

Download, extract and write bootable USB image.

Installa
ansible-galaxy install robertdebock.bios_update
Licenza
apache-2.0
Download
260
Proprietario
I know my way around (Linux) infrastructure, have a passion for automation, Docker, Ansible, Molecule and ci/cd.