veza/ansible/roles/haproxy/tasks/install_debian.yml
2025-12-03 22:56:50 +01:00

46 lines
1.4 KiB
YAML

---
# file: roles/haproxy/tasks/install_debian.yml
- name: "remove legacy key from apt-key"
apt_key:
id: "AEF2348766F371C689A7360095A42FE8353525F9"
state: absent
- name: "make sure /etc/apt/keyrings exists"
file:
path: "/etc/apt/keyrings"
state: directory
- name: "download modern signature key"
get_url:
url: "https://haproxy.debian.net/bernat.debian.org.gpg"
dest: "/dev/shm/bernat.debian.org.gpg"
changed_when: false
- name: "install modern signature key"
shell:
cmd: "cat /dev/shm/bernat.debian.org.gpg | gpg --dearmor -o /etc/apt/keyrings/haproxy.debian.net.gpg"
creates: "/etc/apt/keyrings/haproxy.debian.net.gpg"
- name: "repository file"
copy:
content: "deb [arch=amd64 signed-by=/etc/apt/keyrings/haproxy.debian.net.gpg] http://haproxy.debian.net {{ ansible_distribution_release }}-backports-{{ haproxy_version }} main\n"
dest: "/etc/apt/sources.list.d/haproxy_debian_net.list"
register: repository
- name: "refresh apt if repo was modified"
apt:
update_cache: yes
when: repository.changed
- name: "set fact to install latest version of software when the repository changed"
set_fact:
apt_state: "latest"
when: repository.changed
- name: "install haproxy"
apt:
name:
- haproxy
state: "{{ apt_state | default('present') }}"
default_release: "{{ ansible_distribution_release }}-backports-{{ haproxy_version }}"