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 |
---|---|---|---|
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
- Install the required pip packages listed in requirements.txt.
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 |
Context
This role works with many others. For more information, check the documentation of these roles.
Here is a visual of related roles:
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.
Download, extract and write bootable USB image.
ansible-galaxy install robertdebock.bios_update