]> git.ekhem.eu.org Git - metadata.git/commitdiff
[rsyslog] Configure automatic deployment.
authorJakub Czajka <jakub@ekhem.eu.org>
Sun, 14 Jan 2024 17:38:10 +0000 (18:38 +0100)
committerJakub Czajka <jakub@ekhem.eu.org>
Sun, 14 Jan 2024 21:18:51 +0000 (22:18 +0100)
server.git/hooks/post-receive
server.git/rsyslog.yaml [new file with mode: 0644]

index 1ec1efe45be5416dcf541d33019aad84f677f34f..8df098ecdee72a28988017aea524c3092957b3bc 100755 (executable)
@@ -1,8 +1,9 @@
 #!/bin/sh
-# Copyright (c) 2023 Jakub Czajka <jakub@ekhem.eu.org>
+# Copyright (c) 2023-2024 Jakub Czajka <jakub@ekhem.eu.org>
 # License: GPL-3.0 or later.
 
-DEPLOYABLE="dovecot fail2ban git matrix nginx opendkim postfix postgres sshd"
+DEPLOYABLE="dovecot fail2ban git matrix nginx opendkim postfix postgres rsyslog\
+ sshd"
 
 while read old_revision new_revision branch
 do
diff --git a/server.git/rsyslog.yaml b/server.git/rsyslog.yaml
new file mode 100644 (file)
index 0000000..07cafe0
--- /dev/null
@@ -0,0 +1,29 @@
+# Copyright (c) 2024 Jakub Czajka <jakub@ekhem.eu.org>
+# License: GPL-3.0 or later.
+
+- hosts: servers
+  vars:
+    repo: "{{ ansible_local.env.vars.git_home_dir }}/server.git"
+  tasks:
+    - name: Install rsyslog's packages
+      package:
+        name:
+          - rsyslog
+          - rsyslog-pgsql
+        state: latest
+      become: true
+    - name: Checkout rsyslog's configuration files to /tmp
+      command: git --work-tree=/tmp --git-dir={{ repo }} checkout main --force \
+        rsyslog/*
+      become: true
+    - name: Copy files from /tmp/rsyslog to /etc/rsyslog.d
+      shell: envsubst < /tmp/rsyslog/{{ item }} > /etc/rsyslog.d/{{ item }}
+      environment: "{{ ansible_local.env.vars }}"
+      become: true
+      with_items:
+        - 51-website.conf
+    - name: Restart rsyslog
+      service:
+        name: rsyslog
+        state: restarted
+      become: true