From cad06cae96753e6ab3f421a1c7e04d06d9c395d8 Mon Sep 17 00:00:00 2001
From: Tobias Reisinger <tobias@msrg.cc>
Date: Sat, 16 Dec 2023 06:17:45 +0100
Subject: [PATCH] Add backup to node001 and timeout to healthcheck

---
 inventory/host_vars/node001/main.yml                       | 6 ++++++
 node001.yml                                                | 7 ++++++-
 roles/healthcheck/tasks/main.yml                           | 6 +++---
 .../healthcheck@.service.j2}                               | 3 ++-
 4 files changed, 17 insertions(+), 5 deletions(-)
 rename roles/healthcheck/{files/healthcheck@.service => templates/healthcheck@.service.j2} (75%)

diff --git a/inventory/host_vars/node001/main.yml b/inventory/host_vars/node001/main.yml
index 1a4e9bb..98e959f 100644
--- a/inventory/host_vars/node001/main.yml
+++ b/inventory/host_vars/node001/main.yml
@@ -1,2 +1,8 @@
 ansible_port: "{{ vault_node001.ansible_port }}"
 ansible_user: "{{ vault_node001.ansible_user }}"
+host_backup:
+  backup:
+    hc_uid: "{{ vault_node001.backup.hc_uid }}"
+    uptime_kuma_token: "{{ vault_node001.backup.uptime_kuma_token }}"
+    volumes:
+      - minecraft-2_data
diff --git a/node001.yml b/node001.yml
index 7cced95..639b913 100644
--- a/node001.yml
+++ b/node001.yml
@@ -2,7 +2,12 @@
 - name: Run roles for node001
   hosts: node001
   roles:
-    - common
+    - role: common
+      tags: [always]
+    - role: backup
+      tags: [backup]
+    - role: caddy
+      tags: [caddy, reverse-proxy, webserver]
 
     - role: mailcow
       tags: [mailcow, mail, communication]
diff --git a/roles/healthcheck/tasks/main.yml b/roles/healthcheck/tasks/main.yml
index 5c48f24..6d6b7d2 100644
--- a/roles/healthcheck/tasks/main.yml
+++ b/roles/healthcheck/tasks/main.yml
@@ -27,9 +27,9 @@
         dest: "{{ service_path }}"
         mode: "0755"
 
-    - name: Copy the system service
-      ansible.builtin.copy:
-        src: healthcheck@.service
+    - name: Template the system service
+      ansible.builtin.template:
+        src: healthcheck@.service.j2
         dest: /etc/systemd/system/healthcheck@.service
         mode: "0644"
       become: true
diff --git a/roles/healthcheck/files/healthcheck@.service b/roles/healthcheck/templates/healthcheck@.service.j2
similarity index 75%
rename from roles/healthcheck/files/healthcheck@.service
rename to roles/healthcheck/templates/healthcheck@.service.j2
index 9b40d49..32fa199 100644
--- a/roles/healthcheck/files/healthcheck@.service
+++ b/roles/healthcheck/templates/healthcheck@.service.j2
@@ -1,4 +1,5 @@
 [Service]
-Type=oneshot
+Type=simple
 ExecStart=/usr/bin/docker compose run --rm %i
 WorkingDirectory={{ service_path }}
+RuntimeMaxSec=300