From e5a6c44a98f23e0bef231f413de9fdcc6dd2663b Mon Sep 17 00:00:00 2001 From: Egor Tensin Date: Sun, 25 Oct 2026 03:56:20 +0300 Subject: import roles kernel & microcode from infra-metal --- roles/microcode/README.md | 1 + roles/microcode/handlers/main.yml | 4 ++++ roles/microcode/tasks/main.yml | 29 +++++++++++++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 roles/microcode/README.md create mode 100644 roles/microcode/handlers/main.yml create mode 100644 roles/microcode/tasks/main.yml (limited to 'roles/microcode') diff --git a/roles/microcode/README.md b/roles/microcode/README.md new file mode 100644 index 0000000..d37ad8d --- /dev/null +++ b/roles/microcode/README.md @@ -0,0 +1 @@ +Install the CPU microcode package on Arch Linux. diff --git a/roles/microcode/handlers/main.yml b/roles/microcode/handlers/main.yml new file mode 100644 index 0000000..e7990c7 --- /dev/null +++ b/roles/microcode/handlers/main.yml @@ -0,0 +1,4 @@ +- name: Reboot + listen: microcode_installed + become: true + ansible.builtin.reboot: diff --git a/roles/microcode/tasks/main.yml b/roles/microcode/tasks/main.yml new file mode 100644 index 0000000..26ffd5f --- /dev/null +++ b/roles/microcode/tasks/main.yml @@ -0,0 +1,29 @@ +- name: Get host processor + ansible.builtin.setup: + gather_subset: + - processor + - distribution + +- name: Fail unless Arch Linux + when: | + ansible_facts['distribution'] != 'Archlinux' + ansible.builtin.fail: + msg: Only works on Arch Linux + +- name: Install microcode package + when: | + 'GenuineIntel' in ansible_facts["processor"] + become: true + ansible.builtin.package: + name: intel-ucode + state: present + notify: microcode_installed + +- name: Install AMD microcode package + when: | + 'AuthenticAMD' in ansible_facts["processor"] + become: true + ansible.builtin.package: + name: amd-ucode + state: present + notify: microcode_installed -- cgit v1.3