From df5663825b61987bba6a674a1d99e78fa492c0a2 Mon Sep 17 00:00:00 2001
From: Adar Nimrod <nimrod@shore.co.il>
Date: Sun, 27 Feb 2022 22:47:31 +0200
Subject: [PATCH] Fix for btrfs check.

The Nagios plugin doesn't work on the device, it needs a mountpoint.
---
 Ansible/roles/debian_server/tasks/btrfs.yml              | 9 +++++++++
 .../roles/debian_server/templates/btrfs_check.service.j2 | 2 +-
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/Ansible/roles/debian_server/tasks/btrfs.yml b/Ansible/roles/debian_server/tasks/btrfs.yml
index ad0751f..aac0ef6 100644
--- a/Ansible/roles/debian_server/tasks/btrfs.yml
+++ b/Ansible/roles/debian_server/tasks/btrfs.yml
@@ -1,4 +1,13 @@
 ---
+- name: Find a mountpoint for {{ device }}
+  # There can be multiple once with bind mounts or subvolumes, we only need
+  # one.
+  set_fact:
+    # yamllint disable rule:line-length
+    btrfs_mountpoint: |-
+      {{ (ansible_facts.mounts|selectattr("device", "equalto", device)|first)["mount"] }}
+    # yamllint enable rule:line-length
+
 - name: Install btrfs packages
   apt:
     cache_valid_time: 3600
diff --git a/Ansible/roles/debian_server/templates/btrfs_check.service.j2 b/Ansible/roles/debian_server/templates/btrfs_check.service.j2
index d21bdb4..232a084 100644
--- a/Ansible/roles/debian_server/templates/btrfs_check.service.j2
+++ b/Ansible/roles/debian_server/templates/btrfs_check.service.j2
@@ -6,4 +6,4 @@ After=network-online.target
 
 [Service]
 Type=exec
-ExecStart=mnpw --warn -- /usr/lib/nagios-btrfs/plugins/check_btrfs --mountpoint {{ device }}
+ExecStart=mnpw --warn -- /usr/lib/nagios-btrfs/plugins/check_btrfs --mountpoint {{ btrfs_mountpoint }}
-- 
GitLab