Refactor systemctl services and timers

- Unified service templates into generic systemctl templates
- Introduced reusable filter plugins for script path handling
- Updated path variables and service/timer definitions
- Migrated roles (backup, cleanup, repair, etc.) to use systemctl role
- Added sys-daemon role for core systemd cleanup
- Simplified timer handling via sys-timer role

Note: This is a large refactor and some errors may still exist. Further testing and adjustments will be needed.
This commit is contained in:
2025-08-18 21:22:16 +02:00
parent 3a839cfe37
commit 2569abc0be
219 changed files with 618 additions and 1104 deletions

View File

@@ -2,7 +2,7 @@
## Description
This role installs and configures the necessary components for sending email notifications via systemd when a service fails. It sets up the `sys-ctl-alm-email` service and configures email parameters and templates using msmtp.
This role installs and configures the necessary components for sending email notifications via systemd when a service fails. It sets up the `{{ systemctl_id }}` service and configures email parameters and templates using msmtp.
## Overview

View File

@@ -1,4 +0,0 @@
- name: "restart sys-ctl-alm-email service"
systemd:
name: sys-ctl-alm-email{{ SYS_SERVICE_SUFFIX }}
daemon_reload: yes

View File

@@ -3,21 +3,8 @@
name: '{{ item }}'
loop:
- sys-svc-msmtp
- sys-rst-daemon
- name: "create {{systemd_notifier_email_folder}}"
file:
path: "{{systemd_notifier_email_folder}}"
state: directory
mode: "0755"
- include_role:
name: sys-systemctl
- name: configure sys-ctl-alm-email.sh
template:
src: sys-ctl-alm-email.sh.j2
dest: "{{systemd_notifier_email_folder}}sys-ctl-alm-email.sh"
- name: configure sys-ctl-alm-email{{ SYS_SERVICE_SUFFIX }}
template:
src: sys-ctl-alm-email@.service.j2
dest: /etc/systemd/system/sys-ctl-alm-email.infinito@.service
notify: restart sys-ctl-alm-email service

View File

@@ -3,6 +3,6 @@ Description=status email for %i to user
[Service]
Type=oneshot
ExecStart=/bin/bash {{systemd_notifier_email_folder}}sys-ctl-alm-email.sh %i
ExecStart=/bin/bash {{ systemctl_id | get_service_script_path('sh') }} %i
User=root
Group=systemd-journal

View File

@@ -1 +1 @@
systemd_notifier_email_folder: '{{ PATH_ADMINISTRATOR_SCRIPTS }}sys-ctl-alm-email/'
systemctl_id: sys-ctl-alm-email