2 - name: Add LTTng-CI PPA
3 # This provides gdb with no babeltrace; however, it's only made
4 # available for certain releases
5 when: ansible_distribution == 'Ubuntu' and ansible_distribution_version in ['22']
7 - name: LTTng-CI PPA | apt key
9 src: efficios_ubuntu_ci.gpg
10 dest: /etc/apt/trusted.gpg.d/efficios_ubuntu_ci.gpg
15 - name: LTTng-CI PPA | apt source
16 ansible.builtin.apt_repository:
17 repo: "deb [signed-by=/etc/apt/trusted.gpg.d/efficios_ubuntu_ci.gpg] http://ppa.launchpad.net/efficios/ci/ubuntu {{ ansible_distribution_release }} main"
19 filename: efficios-ubuntu-ci
21 - name: Update apt cache.
22 apt: update_cache=yes cache_valid_time=86400
24 - name: Ensure common packages are installed.
25 apt: "name={{ common_packages }} state=present"
27 - name: Install unattended upgrades
29 name: 'unattended-upgrades'
30 state: "{{(unattended_upgrades|bool)|ternary('present', 'absent')}}"
32 - name: Enable extra repos for unattended upgrades
34 dest: /etc/apt/apt.conf.d/51unattended_upgrades_extra_repos.conf
35 src: unattended_upgrades_extra_repos.conf.j2
38 - "${distro_id}:${distro_codename}-updates"
39 - "${distro_id}:${distro_codename}-backports"
41 - "LP-PPA-efficios-ci:${distro_codename}"
43 repos: "{{repos_base|union(lookup('vars', 'repos_' + ansible_distribution, default=[]))}}"
45 - name: Enable unattended upgrades
48 dest: /etc/apt/apt.conf.d/20auto-upgrades
49 content: "APT::Periodic::Update-Package-Lists \"1\";\nAPT::Periodic::Unattended-Upgrade \"1\";\n"
50 when: unattended_upgrades | bool
52 path: /etc/apt/apt.conf.d/20auto-upgrades
53 state: "{{(unattended_upgrades|bool)|ternary('file', 'absent')}}"
57 - name: Install microcode for physical hosts
58 when: ansible_virtualization_role == 'host'
60 - name: Install AMD microcode
61 when: "'AuthenticAMD' in ansible_processor"
64 register: amd64_microcode
65 - name: Install Intel microcode
66 when: "'GenuineIntel' in ansible_processor"
69 register: intel_microcode
70 - name: Update initramfs
71 when: amd64_microcode.changed or intel_microcode.changed
72 ansible.builtin.command:
73 argv: ['update-initramfs', '-u', '-k', 'all']
74 - name: Set reboot required
75 when: amd64_microcode.changed or intel_microcode.changed
77 dest: /var/run/reboot-required
78 content: '*** System restart required ***'
82 - name: Install prometheus node exporter for physical hosts
83 when: "'hosts' in group_names"
86 - prometheus-node-exporter
87 - prometheus-node-exporter-collectors
89 - name: Work-around for git hanging during checkouts
90 # @see https://support.efficios.com/issues/1532
91 when: ansible_distribution_release == 'bookworm'
93 - name: Use HTTP/1.1 with git HTTP operations
94 community.general.git_config:
95 file: '/etc/gitconfig'