ansible: Install intel or amd microcode on physical hosts
[lttng-ci.git] / automation / ansible / roles / common / tasks / setup-Debian.yml
1 ---
2 - name: Add LTTng-CI PPA
3 when: ansible_distribution == 'Ubuntu'
4 block:
5 - name: LTTng-CI PPA | apt key
6 ansible.builtin.copy:
7 src: efficios_ubuntu_ci.gpg
8 dest: /etc/apt/trusted.gpg.d/efficios_ubuntu_ci.gpg
9 owner: root
10 group: root
11 mode: '0644'
12
13 - name: LTTng-CI PPA | apt source
14 ansible.builtin.apt_repository:
15 repo: "deb [signed-by=/etc/apt/trusted.gpg.d/efficios_ubuntu_ci.gpg] http://ppa.launchpad.net/efficios/ci/ubuntu {{ ansible_distribution_release }} main"
16 state: present
17 filename: efficios-ubuntu-ci
18
19 - name: Update apt cache.
20 apt: update_cache=yes cache_valid_time=86400
21
22 - name: Ensure common packages are installed.
23 apt: "name={{ common_packages }} state=present"
24
25 - name: Install unattended upgrades
26 apt:
27 name: 'unattended-upgrades'
28 state: "{{(unattended_upgrades|bool)|ternary('present', 'absent')}}"
29
30 - name: Enable extra repos for unattended upgrades
31 template:
32 dest: /etc/apt/apt.conf.d/51unattended_upgrades_extra_repos.conf
33 src: unattended_upgrades_extra_repos.conf.j2
34 vars:
35 repos_base:
36 - "${distro_id}:${distro_codename}-updates"
37 - "${distro_id}:${distro_codename}-backports"
38 repos_Ubuntu:
39 - "LP-PPA-efficios-ci:${distro_codename}"
40 repose_Debian: []
41 repos: "{{repos_base|union(lookup('vars', 'repos_' + ansible_distribution, default=[]))}}"
42
43 - name: Enable unattended upgrades
44 block:
45 - copy:
46 dest: /etc/apt/apt.conf.d/20auto-upgrades
47 content: "APT::Periodic::Update-Package-Lists \"1\";\nAPT::Periodic::Unattended-Upgrade \"1\";\n"
48 when: unattended_upgrades | bool
49 - file:
50 path: /etc/apt/apt.conf.d/20auto-upgrades
51 state: "{{(unattended_upgrades|bool)|ternary('file', 'absent')}}"
52 owner: root
53 group: root
54 mode: '0644'
55 - name: Install microcode for physical hosts
56 when: ansible_virtualization_role == 'host'
57 block:
58 - name: Install AMD microcode
59 when: "'AuthenticAMD' in ansible_processor"
60 ansible.builtin.apt:
61 name: amd64-microcode
62 register: amd64_microcode
63 - name: Install Intel microcode
64 when: "'GenuineIntel' in ansible_processor"
65 ansible.builtin.apt:
66 name: intel-microcode
67 register: intel_microcode
68 - name: Update initramfs
69 when: amd64_microcode.changed or intel_microcode.changed
70 ansible.builtin.command:
71 argv: ['update-initramfs', '-u', '-k', 'all']
72 - name: Set reboot required
73 when: amd64_microcode.changed or intel_microcode.changed
74 ansible.builtin.copy:
75 dest: /var/run/reboot-required
76 content: '*** System restart required ***'
77 owner: root
78 group: root
79 mode: '0644'
This page took 0.032064 seconds and 5 git commands to generate.