From f1d4872593e9dc3e6c999cde80b211241209e986 Mon Sep 17 00:00:00 2001
From: Yohann D'ANELLO <ynerant@crans.org>
Date: Sun, 11 Jul 2021 01:03:22 +0200
Subject: [PATCH] [keepalived] Install keepalived from buster-backports to
 avoid segfaults

Signed-off-by: Yohann D'ANELLO <ynerant@crans.org>
---
 roles/keepalived/tasks/main.yml               | 21 +++++++++++++++++++
 .../templates/apt/preferences.d/keepalived.j2 |  7 +++++++
 2 files changed, 28 insertions(+)
 create mode 100644 roles/keepalived/templates/apt/preferences.d/keepalived.j2

diff --git a/roles/keepalived/tasks/main.yml b/roles/keepalived/tasks/main.yml
index 008656e1..87362375 100644
--- a/roles/keepalived/tasks/main.yml
+++ b/roles/keepalived/tasks/main.yml
@@ -1,4 +1,25 @@
 ---
+- name: Add buster-backports to apt sources
+  apt_repository:
+    repo: deb {{ debian_mirror }} buster-backports main
+    state: present
+  when:
+    - ansible_distribution == "Debian"
+    - ansible_distribution_major_version | int == 10
+    - ansible_distribution_release == "buster"
+
+- name: Use buster-backports to install keepalived
+  template:
+    src: apt/preferences.d/keepalived.j2
+    dest: apt/preferences.d/keepalived
+    owner: root
+    group: root
+    mode: 0644
+  when:
+    - ansible_distribution == "Debian"
+    - ansible_distribution_major_version | int == 10
+    - ansible_distribution_release == "buster"
+
 - name: Install keepalived
   apt:
     update_cache: true
diff --git a/roles/keepalived/templates/apt/preferences.d/keepalived.j2 b/roles/keepalived/templates/apt/preferences.d/keepalived.j2
new file mode 100644
index 00000000..bf8143b8
--- /dev/null
+++ b/roles/keepalived/templates/apt/preferences.d/keepalived.j2
@@ -0,0 +1,7 @@
+{{ ansible_header | comment }}
+
+
+Package: keepalived
+Pin: release n=buster-backports
+Pin-Priority: 900
+
-- 
GitLab