From 168c5c0da6431e368feab07e1c7c1a4ef1bf33a2 Mon Sep 17 00:00:00 2001 From: Kevin Veen-Birkenbach Date: Fri, 11 Jul 2025 17:55:26 +0200 Subject: [PATCH] Another big round of refactoring and cleaning... --- docs/analysis/Features.md | 4 +- docs/guides/administrator/Readme.md | 6 +- group_vars/all/05_maintenace.yml | 20 +++--- group_vars/all/07_paths.yml | 2 +- roles/README.md | 14 ++-- .../templates/alert-compose@.service.j2 | 8 --- roles/alert-email/handlers/main.yml | 4 -- roles/alert-email/vars/main.yml | 2 - roles/alert-telegram/handlers/main.yml | 4 -- roles/alert-telegram/vars/main.yml | 2 - roles/bkp-data-to-usb/handlers/main.yml | 5 -- roles/bkp-directory-validator/vars/main.yml | 2 - roles/bkp-docker-to-local/handlers/main.yml | 9 --- roles/bkp-provider/vars/main.yml | 1 - roles/bkp-remote-to-local/handlers/main.yml | 4 -- roles/bkp-remote-to-local/vars/main.yml | 2 - roles/categories.yml | 67 +++++++++---------- roles/cln-backups-service/handlers/main.yml | 5 -- roles/cln-backups-service/vars/main.yml | 2 - roles/cln-backups-timer/vars/main.yml | 1 - roles/cln-certs/handlers/main.yml | 6 -- roles/cln-certs/vars/main.yml | 1 - roles/cln-disc-space/handlers/main.yml | 5 -- roles/cln-disc-space/tasks/main.yml | 26 ------- roles/cln-disc-space/vars/main.yml | 2 - .../vars/main.yml | 1 - .../handlers/main.yml | 5 -- .../tasks/main.yml | 22 ------ .../vars/main.yml | 3 - roles/cln-domains/vars/main.yml | 1 - .../handlers/main.yml | 5 -- roles/cmp-rdbms-orchestrator/tasks/main.yml | 2 +- roles/core-daemon/vars/main.yml | 1 - roles/core-journalctl/vars/main.yml | 1 - roles/core-security/README.md | 21 ------ roles/core-security/meta/main.yml | 24 ------- roles/core-security/vars/main.yml | 1 - roles/core-sshd/vars/main.yml | 1 - roles/core-sudo/vars/main.yml | 1 - roles/desk-nextcloud-client/README.md | 2 +- roles/docker-core/meta/main.yml | 10 +-- roles/docker-core/tasks/main.yml | 2 +- roles/drv-msi-keyboard-color/meta/main.yml | 2 +- roles/drv-msi-keyboard-color/tasks/main.yml | 4 +- .../templates/keyboard-color.service.j2 | 2 +- roles/gen-msmtp/vars/main.yml | 1 - roles/gen-timer/vars/main.yml | 1 - .../handlers/main.yml | 4 -- roles/maint-docker-heal/handlers/main.yml | 5 -- .../templates/maint-docker-heal.service.j2 | 8 --- roles/maint-docker-heal/vars/main.yml | 2 - roles/maint-docker-restart/handlers/main.yml | 5 -- roles/maint-docker-restart/vars/main.yml | 3 - roles/maint-lock/vars/main.yml | 1 - roles/maint-swapfile/vars/main.yml | 1 - roles/mon-bot-btrfs/handlers/main.yml | 5 -- roles/mon-bot-btrfs/tasks/main.yml | 26 ------- .../templates/mon-bot-btrfs.service.j2 | 7 -- roles/mon-bot-btrfs/vars/main.yml | 2 - roles/mon-bot-csp/handlers/main.yml | 5 -- roles/mon-bot-csp/vars/main.yml | 3 - roles/mon-bot-disc-space/handlers/main.yml | 5 -- roles/mon-bot-disc-space/tasks/main.yml | 26 ------- .../templates/mon-bot-disc-space.service.j2 | 7 -- roles/mon-bot-disc-space/vars/main.yml | 2 - .../handlers/main.yml | 5 -- .../mon-bot-docker-container.service.j2 | 7 -- roles/mon-bot-docker-container/vars/main.yml | 2 - .../mon-bot-docker-volumes/handlers/main.yml | 5 -- .../mon-bot-docker-volumes.service.j2 | 7 -- roles/mon-bot-docker-volumes/vars/main.yml | 2 - roles/mon-bot-journalctl/handlers/main.yml | 5 -- .../templates/mon-bot-journalctl.service.j2 | 7 -- roles/mon-bot-journalctl/vars/main.yml | 2 - roles/mon-bot-msmtp/README.md | 21 ------ roles/mon-bot-msmtp/handlers/main.yml | 5 -- roles/mon-bot-msmtp/tasks/main.yml | 27 -------- .../templates/mon-bot-msmtp.service.j2 | 7 -- roles/mon-bot-msmtp/vars/main.yml | 2 - roles/mon-bot-webserver/handlers/main.yml | 5 -- .../templates/mon-bot-webserver.service.j2 | 7 -- roles/mon-bot-webserver/vars/main.yml | 2 - roles/srv-proxy-6-6-tls-deploy/README.md | 4 +- roles/srv-proxy-6-6-tls-deploy/meta/main.yml | 2 +- roles/srv-proxy-6-6-tls-deploy/tasks/main.yml | 4 +- .../srv-proxy-6-6-tls-deploy.service.j2 | 2 +- roles/srv-web-6-6-tls-renew/README.md | 10 +-- roles/srv-web-6-6-tls-renew/meta/main.yml | 4 +- roles/srv-web-6-6-tls-renew/tasks/main.yml | 4 +- .../srv-web-6-6-tls-renew.service.j2 | 2 +- roles/srv-web-7-4-core/meta/main.yml | 4 +- roles/srv-web-7-6-https/README.md | 2 +- roles/srv-web-7-6-https/meta/main.yml | 2 +- .../templates/global.css.j2 | 6 +- .../README.md | 0 .../files/svc-sys-bkp-data-to-usb.python} | 2 +- .../svc-sys-bkp-data-to-usb/handlers/main.yml | 5 ++ .../meta/main.yml | 4 +- .../tasks/main.yml | 8 +-- .../svc-sys-bkp-data-to-usb.service.j2} | 4 +- .../vars/main.yml | 4 +- .../Administration.md | 6 +- .../README.md | 2 +- .../files/sys-bkp-remote-to-local.sh} | 0 roles/svc-sys-bkp-rmt-2-loc/handlers/main.yml | 4 ++ .../meta/main.yml | 10 +-- .../tasks/main.yml | 18 ++--- .../templates/backups-remote-to-local.sh.j2 | 2 +- .../sys-bkp-remote-to-local.service.j2} | 2 +- roles/svc-sys-bkp-rmt-2-loc/vars/main.yml | 2 + .../README.md | 4 +- .../handlers/main.yml | 4 +- .../meta/main.yml | 4 +- .../tasks/main.yml | 8 +-- .../templates/sys-alm-compose@.service.j2 | 8 +++ .../{alert-email => sys-alm-email}/README.md | 6 +- roles/sys-alm-email/handlers/main.yml | 4 ++ .../meta/main.yml | 6 +- .../tasks/main.yml | 14 ++-- .../templates/sys-alm-email.sh.j2} | 0 .../templates/sys-alm-email@.service.j2} | 2 +- roles/sys-alm-email/vars/main.yml | 1 + .../README.md | 6 +- roles/sys-alm-telegram/handlers/main.yml | 4 ++ .../meta/main.yml | 4 +- .../tasks/main.yml | 12 ++-- .../templates/sys-alm-telegram.sh.j2} | 0 .../templates/sys-alm-telegram@.service.j2} | 0 roles/sys-alm-telegram/vars/main.yml | 2 + .../README.md | 4 +- .../meta/main.yml | 0 .../tasks/main.yml | 0 .../README.md | 14 ++-- .../sys-bkp-docker-to-local/handlers/main.yml | 9 +++ .../meta/main.yml | 10 +-- .../tasks/main.yml | 20 +++--- .../tasks/reset.yml | 0 .../tasks/seed-database-to-backup.yml | 0 ...bkp-docker-to-local-everything.service.j2} | 6 +- .../sys-bkp-docker-to-local.service.j2} | 6 +- .../vars/main.yml | 2 +- .../README.md | 0 .../files/backup | 0 .../files/ssh-wrapper.sh | 4 +- .../meta/main.yml | 2 +- .../tasks/main.yml | 0 .../templates/authorized_keys.j2 | 0 .../vars/main.yml | 2 +- .../README.md | 2 +- .../meta/main.yml | 4 +- .../README.md | 0 .../meta/main.yml | 2 +- .../tasks/main.yml | 0 .../vars/main.yml} | 0 .../README.md | 2 +- .../files/sys-cln-backups.py} | 0 roles/sys-cln-bkps-service/handlers/main.yml | 5 ++ .../meta/main.yml | 6 +- .../tasks/main.yml | 14 ++-- .../templates/sys-cln-backups.service.j2} | 4 +- roles/sys-cln-bkps-service/vars/main.yml | 2 + .../README.md | 6 +- .../meta/main.yml | 6 +- .../tasks/main.yml | 8 +-- roles/{cln-certs => sys-cln-certs}/README.md | 12 ++-- roles/sys-cln-certs/handlers/main.yml | 6 ++ .../meta/main.yml | 4 +- .../tasks/main.yml | 12 ++-- .../templates/sys-cln-certs.service.j2} | 2 +- .../README.md | 0 roles/sys-cln-disc-space/handlers/main.yml | 5 ++ .../meta/main.yml | 6 +- roles/sys-cln-disc-space/tasks/main.yml | 26 +++++++ .../templates/sys-cln-disc-space.service.j2} | 4 +- .../templates/sys-cln-disc-space.sh.j2} | 2 +- roles/sys-cln-disc-space/vars/main.yml | 1 + .../README.md | 2 +- .../meta/main.yml | 2 +- .../tasks/main.yml | 0 .../tasks/remove_deprecated_nginx_configs.yml | 0 .../sys-cln-domains/vars/main.yml | 0 .../README.md | 10 +-- roles/sys-cln-faild-bkps/handlers/main.yml | 5 ++ .../meta/main.yml | 8 +-- .../tasks/main.yml | 14 ++-- .../templates/sys-cln-faild-bkps.service.j2} | 2 +- .../vars/main.yml | 2 +- .../README.md | 8 +-- .../files/sys-hlth-btrfs.sh} | 0 roles/sys-hlth-btrfs/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- roles/sys-hlth-btrfs/tasks/main.yml | 26 +++++++ .../templates/sys-hlth-btrfs.service.j2 | 7 ++ roles/sys-hlth-btrfs/vars/main.yml | 1 + roles/{mon-bot-csp => sys-hlth-csp}/README.md | 2 +- .../files/sys-hlth-csp.py} | 0 roles/sys-hlth-csp/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 14 ++-- .../templates/sys-hlth-csp.service.j2} | 2 +- roles/sys-hlth-csp/vars/main.yml | 3 + .../README.md | 4 +- .../files/sys-hlth-disc-space.sh} | 0 roles/sys-hlth-disc-space/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- roles/sys-hlth-disc-space/tasks/main.yml | 26 +++++++ .../templates/sys-hlth-disc-space.service.j2 | 7 ++ roles/sys-hlth-disc-space/vars/main.yml | 1 + .../README.md | 8 +-- .../files/sys-hlth-docker-container.sh} | 0 .../handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 18 ++--- .../sys-hlth-docker-container.service.j2 | 7 ++ roles/sys-hlth-docker-container/vars/main.yml | 1 + .../README.md | 8 +-- .../files/sys-hlth-docker-volumes.sh} | 0 .../sys-hlth-docker-volumes/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 18 ++--- .../sys-hlth-docker-volumes.service.j2 | 7 ++ roles/sys-hlth-docker-volumes/vars/main.yml | 1 + .../README.md | 4 +- .../files/sys-hlth-journalctl.sh} | 0 roles/sys-hlth-journalctl/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 18 ++--- .../templates/sys-hlth-journalctl.service.j2 | 7 ++ roles/sys-hlth-journalctl/vars/main.yml | 2 + roles/sys-hlth-msmtp/README.md | 21 ++++++ roles/sys-hlth-msmtp/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- roles/sys-hlth-msmtp/tasks/main.yml | 27 ++++++++ .../templates/sys-hlth-msmtp.service.j2 | 7 ++ .../templates/sys-hlth-msmtp.sh.j2} | 0 roles/sys-hlth-msmtp/vars/main.yml | 2 + .../README.md | 4 +- .../TODO.md | 0 roles/sys-hlth-webserver/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 18 ++--- .../templates/sys-hlth-webserver.py.j2} | 0 .../templates/sys-hlth-webserver.service.j2 | 7 ++ roles/sys-hlth-webserver/vars/main.yml | 1 + roles/{maint-lock => sys-lock}/README.md | 0 .../files/sys-lock.py} | 0 roles/{maint-lock => sys-lock}/meta/main.yml | 0 roles/{maint-lock => sys-lock}/tasks/main.yml | 2 +- .../README.md | 0 roles/sys-opt-ssd-hdd/files/__init__.py | 0 .../files/sys-opt-ssd-hdd.py} | 0 roles/sys-opt-ssd-hdd/handlers/main.yml | 5 ++ .../meta/main.yml | 0 roles/sys-opt-ssd-hdd/tasks/main.yml | 22 ++++++ .../templates/sys-opt-ssd-hdd.service.j2} | 4 +- roles/sys-opt-ssd-hdd/vars/main.yml | 2 + .../README.md | 0 .../meta/main.yml | 2 +- .../tasks/main.yml | 0 roles/sys-opt-swapfile/vars/main.yml | 0 .../README.md | 2 +- roles/sys-rpr-btrfs-blnc/handlers/main.yml | 4 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 12 ++-- .../templates/sys-rpr-btrfs-blnc.service.j2} | 2 +- .../vars/main.yml | 2 +- .../README.md | 0 .../files/sys-rpr-docker-hard.py} | 0 roles/sys-rpr-docker-hard/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 14 ++-- .../templates/sys-rpr-docker-hard.service.j2} | 4 +- roles/sys-rpr-docker-hard/vars/main.yml | 3 + .../README.md | 0 .../files/sys-rpr-docker-soft.py} | 2 +- roles/sys-rpr-docker-soft/handlers/main.yml | 5 ++ .../meta/main.yml | 2 +- .../tasks/main.yml | 20 +++--- .../templates/sys-rpr-docker-soft.service.j2 | 8 +++ roles/sys-rpr-docker-soft/vars/main.yml | 2 + .../{core-daemon => sys-rst-daemon}/README.md | 0 .../meta/main.yml | 2 +- .../tasks/main.yml | 0 .../tasks/reset.yml | 0 roles/{core-sudo => sys-sudo}/README.md | 0 roles/{core-sudo => sys-sudo}/files/sudoers | 0 roles/{core-sudo => sys-sudo}/meta/main.yml | 0 roles/{core-sudo => sys-sudo}/tasks/main.yml | 0 .../README.md | 4 +- .../handlers/main.yml | 0 .../meta/main.yml | 4 +- .../tasks/main.yml | 0 .../templates/journald.conf.j2 | 0 roles/{gen-msmtp => sys-svc-msmtp}/README.md | 0 .../meta/main.yml | 2 +- .../tasks/main.yml | 0 .../templates/msmtprc.conf.j2 | 0 roles/{core-sshd => sys-svc-sshd}/README.md | 0 .../handlers/main.yml | 0 .../{core-sshd => sys-svc-sshd}/meta/main.yml | 0 .../tasks/main.yml | 0 .../templates/sshd_config.j2 | 0 roles/{gen-timer => sys-timer}/README.md | 0 roles/{gen-timer => sys-timer}/meta/main.yml | 0 roles/{gen-timer => sys-timer}/tasks/main.yml | 0 .../{gen-timer => sys-timer}/tasks/reset.yml | 0 .../templates/dummy.timer.j2 | 0 .../{update => update-compose}/meta/main.yml | 0 .../tasks/README.md | 0 .../{update => update-compose}/tasks/main.yml | 0 roles/update-docker/meta/main.yml | 2 +- roles/update-docker/tasks/main.yml | 4 +- .../templates/update-docker.service.j2 | 2 +- roles/user-administrator/meta/main.yml | 2 +- roles/web-app-bigbluebutton/tasks/main.yml | 2 +- .../tasks/create-and-seed-database.yml | 2 +- roles/web-app-nextcloud/docs/Update.md | 4 +- roles/web-app-wordpress/tasks/main.yml | 2 +- tasks/stages/01_constructor.yml | 5 +- tasks/stages/02_server.yml | 12 ++-- tests/integration/test_no_application_id.py | 25 +++++++ tests/unit/roles/sys-opt-ssd-hdd/__init__.py | 0 .../test_storage_optimizer.py | 2 +- 323 files changed, 761 insertions(+), 811 deletions(-) delete mode 100644 roles/alert-compose/templates/alert-compose@.service.j2 delete mode 100644 roles/alert-email/handlers/main.yml delete mode 100644 roles/alert-email/vars/main.yml delete mode 100644 roles/alert-telegram/handlers/main.yml delete mode 100644 roles/alert-telegram/vars/main.yml delete mode 100644 roles/bkp-data-to-usb/handlers/main.yml delete mode 100644 roles/bkp-directory-validator/vars/main.yml delete mode 100644 roles/bkp-docker-to-local/handlers/main.yml delete mode 100644 roles/bkp-provider/vars/main.yml delete mode 100644 roles/bkp-remote-to-local/handlers/main.yml delete mode 100644 roles/bkp-remote-to-local/vars/main.yml delete mode 100644 roles/cln-backups-service/handlers/main.yml delete mode 100644 roles/cln-backups-service/vars/main.yml delete mode 100644 roles/cln-backups-timer/vars/main.yml delete mode 100644 roles/cln-certs/handlers/main.yml delete mode 100644 roles/cln-certs/vars/main.yml delete mode 100644 roles/cln-disc-space/handlers/main.yml delete mode 100644 roles/cln-disc-space/tasks/main.yml delete mode 100644 roles/cln-disc-space/vars/main.yml delete mode 100644 roles/cln-docker-anonymous-volumes/vars/main.yml delete mode 100644 roles/cln-docker-storage-optimizer/handlers/main.yml delete mode 100644 roles/cln-docker-storage-optimizer/tasks/main.yml delete mode 100644 roles/cln-docker-storage-optimizer/vars/main.yml delete mode 100644 roles/cln-domains/vars/main.yml delete mode 100644 roles/cln-failed-docker-backups/handlers/main.yml delete mode 100644 roles/core-daemon/vars/main.yml delete mode 100644 roles/core-journalctl/vars/main.yml delete mode 100644 roles/core-security/README.md delete mode 100644 roles/core-security/meta/main.yml delete mode 100644 roles/core-security/vars/main.yml delete mode 100644 roles/core-sshd/vars/main.yml delete mode 100644 roles/core-sudo/vars/main.yml delete mode 100644 roles/gen-msmtp/vars/main.yml delete mode 100644 roles/gen-timer/vars/main.yml delete mode 100644 roles/maint-btrfs-auto-balancer/handlers/main.yml delete mode 100644 roles/maint-docker-heal/handlers/main.yml delete mode 100644 roles/maint-docker-heal/templates/maint-docker-heal.service.j2 delete mode 100644 roles/maint-docker-heal/vars/main.yml delete mode 100644 roles/maint-docker-restart/handlers/main.yml delete mode 100644 roles/maint-docker-restart/vars/main.yml delete mode 100644 roles/maint-lock/vars/main.yml delete mode 100644 roles/maint-swapfile/vars/main.yml delete mode 100644 roles/mon-bot-btrfs/handlers/main.yml delete mode 100644 roles/mon-bot-btrfs/tasks/main.yml delete mode 100644 roles/mon-bot-btrfs/templates/mon-bot-btrfs.service.j2 delete mode 100644 roles/mon-bot-btrfs/vars/main.yml delete mode 100644 roles/mon-bot-csp/handlers/main.yml delete mode 100644 roles/mon-bot-csp/vars/main.yml delete mode 100644 roles/mon-bot-disc-space/handlers/main.yml delete mode 100644 roles/mon-bot-disc-space/tasks/main.yml delete mode 100644 roles/mon-bot-disc-space/templates/mon-bot-disc-space.service.j2 delete mode 100644 roles/mon-bot-disc-space/vars/main.yml delete mode 100644 roles/mon-bot-docker-container/handlers/main.yml delete mode 100644 roles/mon-bot-docker-container/templates/mon-bot-docker-container.service.j2 delete mode 100644 roles/mon-bot-docker-container/vars/main.yml delete mode 100644 roles/mon-bot-docker-volumes/handlers/main.yml delete mode 100644 roles/mon-bot-docker-volumes/templates/mon-bot-docker-volumes.service.j2 delete mode 100644 roles/mon-bot-docker-volumes/vars/main.yml delete mode 100644 roles/mon-bot-journalctl/handlers/main.yml delete mode 100644 roles/mon-bot-journalctl/templates/mon-bot-journalctl.service.j2 delete mode 100644 roles/mon-bot-journalctl/vars/main.yml delete mode 100644 roles/mon-bot-msmtp/README.md delete mode 100644 roles/mon-bot-msmtp/handlers/main.yml delete mode 100644 roles/mon-bot-msmtp/tasks/main.yml delete mode 100644 roles/mon-bot-msmtp/templates/mon-bot-msmtp.service.j2 delete mode 100644 roles/mon-bot-msmtp/vars/main.yml delete mode 100644 roles/mon-bot-webserver/handlers/main.yml delete mode 100644 roles/mon-bot-webserver/templates/mon-bot-webserver.service.j2 delete mode 100644 roles/mon-bot-webserver/vars/main.yml rename roles/{bkp-data-to-usb => svc-sys-bkp-data-to-usb}/README.md (100%) rename roles/{bkp-data-to-usb/files/bkp-data-to-usb.python => svc-sys-bkp-data-to-usb/files/svc-sys-bkp-data-to-usb.python} (98%) create mode 100644 roles/svc-sys-bkp-data-to-usb/handlers/main.yml rename roles/{bkp-data-to-usb => svc-sys-bkp-data-to-usb}/meta/main.yml (94%) rename roles/{bkp-data-to-usb => svc-sys-bkp-data-to-usb}/tasks/main.yml (56%) rename roles/{bkp-data-to-usb/templates/bkp-data-to-usb.service.j2 => svc-sys-bkp-data-to-usb/templates/svc-sys-bkp-data-to-usb.service.j2} (72%) rename roles/{bkp-data-to-usb => svc-sys-bkp-data-to-usb}/vars/main.yml (68%) rename roles/{bkp-remote-to-local => svc-sys-bkp-rmt-2-loc}/Administration.md (57%) rename roles/{bkp-remote-to-local => svc-sys-bkp-rmt-2-loc}/README.md (91%) rename roles/{bkp-remote-to-local/files/bkp-remote-to-local.sh => svc-sys-bkp-rmt-2-loc/files/sys-bkp-remote-to-local.sh} (100%) create mode 100644 roles/svc-sys-bkp-rmt-2-loc/handlers/main.yml rename roles/{bkp-remote-to-local => svc-sys-bkp-rmt-2-loc}/meta/main.yml (89%) rename roles/{bkp-remote-to-local => svc-sys-bkp-rmt-2-loc}/tasks/main.yml (56%) rename roles/{bkp-remote-to-local => svc-sys-bkp-rmt-2-loc}/templates/backups-remote-to-local.sh.j2 (61%) rename roles/{bkp-remote-to-local/templates/bkp-remote-to-local.service.j2 => svc-sys-bkp-rmt-2-loc/templates/sys-bkp-remote-to-local.service.j2} (83%) create mode 100644 roles/svc-sys-bkp-rmt-2-loc/vars/main.yml rename roles/{alert-compose => sys-alm-compose}/README.md (78%) rename roles/{alert-compose => sys-alm-compose}/handlers/main.yml (75%) rename roles/{alert-compose => sys-alm-compose}/meta/main.yml (94%) rename roles/{alert-compose => sys-alm-compose}/tasks/main.yml (54%) create mode 100644 roles/sys-alm-compose/templates/sys-alm-compose@.service.j2 rename roles/{alert-email => sys-alm-email}/README.md (71%) create mode 100644 roles/sys-alm-email/handlers/main.yml rename roles/{alert-email => sys-alm-email}/meta/main.yml (81%) rename roles/{alert-email => sys-alm-email}/tasks/main.yml (61%) rename roles/{alert-email/templates/alert-email.sh.j2 => sys-alm-email/templates/sys-alm-email.sh.j2} (100%) rename roles/{alert-email/templates/alert-email@.service.j2 => sys-alm-email/templates/sys-alm-email@.service.j2} (58%) create mode 100644 roles/sys-alm-email/vars/main.yml rename roles/{alert-telegram => sys-alm-telegram}/README.md (69%) create mode 100644 roles/sys-alm-telegram/handlers/main.yml rename roles/{alert-telegram => sys-alm-telegram}/meta/main.yml (88%) rename roles/{alert-telegram => sys-alm-telegram}/tasks/main.yml (71%) rename roles/{alert-telegram/templates/alert-telegram.sh.j2 => sys-alm-telegram/templates/sys-alm-telegram.sh.j2} (100%) rename roles/{alert-telegram/templates/alert-telegram@.service.j2 => sys-alm-telegram/templates/sys-alm-telegram@.service.j2} (100%) create mode 100644 roles/sys-alm-telegram/vars/main.yml rename roles/{bkp-directory-validator => sys-bkp-directory-validator}/README.md (88%) rename roles/{bkp-directory-validator => sys-bkp-directory-validator}/meta/main.yml (100%) rename roles/{bkp-directory-validator => sys-bkp-directory-validator}/tasks/main.yml (100%) rename roles/{bkp-docker-to-local => sys-bkp-docker-to-local}/README.md (60%) create mode 100644 roles/sys-bkp-docker-to-local/handlers/main.yml rename roles/{bkp-docker-to-local => sys-bkp-docker-to-local}/meta/main.yml (85%) rename roles/{bkp-docker-to-local => sys-bkp-docker-to-local}/tasks/main.yml (70%) rename roles/{bkp-docker-to-local => sys-bkp-docker-to-local}/tasks/reset.yml (100%) rename roles/{bkp-docker-to-local => sys-bkp-docker-to-local}/tasks/seed-database-to-backup.yml (100%) rename roles/{bkp-docker-to-local/templates/bkp-docker-to-local-everything.service.j2 => sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local-everything.service.j2} (53%) rename roles/{bkp-docker-to-local/templates/bkp-docker-to-local.service.j2 => sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local.service.j2} (51%) rename roles/{bkp-docker-to-local => sys-bkp-docker-to-local}/vars/main.yml (60%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/README.md (100%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/files/backup (100%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/files/ssh-wrapper.sh (84%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/meta/main.yml (97%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/tasks/main.yml (100%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/templates/authorized_keys.j2 (100%) rename roles/{bkp-provider-user => sys-bkp-provider-user}/vars/main.yml (86%) rename roles/{bkp-provider => sys-bkp-provider}/README.md (90%) rename roles/{bkp-provider => sys-bkp-provider}/meta/main.yml (93%) rename roles/{cln-docker-anonymous-volumes => sys-cln-anon-volumes}/README.md (100%) rename roles/{cln-docker-anonymous-volumes => sys-cln-anon-volumes}/meta/main.yml (97%) rename roles/{cln-docker-anonymous-volumes => sys-cln-anon-volumes}/tasks/main.yml (100%) rename roles/{cln-docker-storage-optimizer/files/__init__.py => sys-cln-anon-volumes/vars/main.yml} (100%) rename roles/{cln-backups-service => sys-cln-bkps-service}/README.md (95%) rename roles/{cln-backups-service/files/cln-backups.py => sys-cln-bkps-service/files/sys-cln-backups.py} (100%) create mode 100644 roles/sys-cln-bkps-service/handlers/main.yml rename roles/{cln-backups-service => sys-cln-bkps-service}/meta/main.yml (93%) rename roles/{cln-backups-service => sys-cln-bkps-service}/tasks/main.yml (67%) rename roles/{cln-backups-service/templates/cln-backups.service.j2 => sys-cln-bkps-service/templates/sys-cln-backups.service.j2} (68%) create mode 100644 roles/sys-cln-bkps-service/vars/main.yml rename roles/{cln-backups-timer => sys-cln-bkps-timer}/README.md (65%) rename roles/{cln-backups-timer => sys-cln-bkps-timer}/meta/main.yml (84%) rename roles/{cln-backups-timer => sys-cln-bkps-timer}/tasks/main.yml (69%) rename roles/{cln-certs => sys-cln-certs}/README.md (77%) create mode 100644 roles/sys-cln-certs/handlers/main.yml rename roles/{cln-certs => sys-cln-certs}/meta/main.yml (95%) rename roles/{cln-certs => sys-cln-certs}/tasks/main.yml (69%) rename roles/{cln-certs/templates/cln-certs.service.j2 => sys-cln-certs/templates/sys-cln-certs.service.j2} (80%) rename roles/{cln-disc-space => sys-cln-disc-space}/README.md (100%) create mode 100644 roles/sys-cln-disc-space/handlers/main.yml rename roles/{cln-disc-space => sys-cln-disc-space}/meta/main.yml (93%) create mode 100644 roles/sys-cln-disc-space/tasks/main.yml rename roles/{cln-disc-space/templates/cln-disc-space.service.j2 => sys-cln-disc-space/templates/sys-cln-disc-space.service.j2} (65%) rename roles/{cln-disc-space/templates/cln-disc-space.sh.j2 => sys-cln-disc-space/templates/sys-cln-disc-space.sh.j2} (90%) create mode 100644 roles/sys-cln-disc-space/vars/main.yml rename roles/{cln-domains => sys-cln-domains}/README.md (98%) rename roles/{cln-domains => sys-cln-domains}/meta/main.yml (97%) rename roles/{cln-domains => sys-cln-domains}/tasks/main.yml (100%) rename roles/{cln-domains => sys-cln-domains}/tasks/remove_deprecated_nginx_configs.yml (100%) rename tests/unit/roles/cln-docker-storage-optimizer/__init__.py => roles/sys-cln-domains/vars/main.yml (100%) rename roles/{cln-failed-docker-backups => sys-cln-faild-bkps}/README.md (55%) create mode 100644 roles/sys-cln-faild-bkps/handlers/main.yml rename roles/{cln-failed-docker-backups => sys-cln-faild-bkps}/meta/main.yml (89%) rename roles/{cln-failed-docker-backups => sys-cln-faild-bkps}/tasks/main.yml (77%) rename roles/{cln-failed-docker-backups/templates/cln-failed-docker-backups.service.j2 => sys-cln-faild-bkps/templates/sys-cln-faild-bkps.service.j2} (90%) rename roles/{cln-failed-docker-backups => sys-cln-faild-bkps}/vars/main.yml (61%) rename roles/{mon-bot-btrfs => sys-hlth-btrfs}/README.md (71%) rename roles/{mon-bot-btrfs/files/mon-bot-btrfs.sh => sys-hlth-btrfs/files/sys-hlth-btrfs.sh} (100%) create mode 100644 roles/sys-hlth-btrfs/handlers/main.yml rename roles/{mon-bot-btrfs => sys-hlth-btrfs}/meta/main.yml (96%) create mode 100644 roles/sys-hlth-btrfs/tasks/main.yml create mode 100644 roles/sys-hlth-btrfs/templates/sys-hlth-btrfs.service.j2 create mode 100644 roles/sys-hlth-btrfs/vars/main.yml rename roles/{mon-bot-csp => sys-hlth-csp}/README.md (92%) rename roles/{mon-bot-csp/files/mon-bot-csp.py => sys-hlth-csp/files/sys-hlth-csp.py} (100%) create mode 100644 roles/sys-hlth-csp/handlers/main.yml rename roles/{mon-bot-csp => sys-hlth-csp}/meta/main.yml (97%) rename roles/{mon-bot-csp => sys-hlth-csp}/tasks/main.yml (80%) rename roles/{mon-bot-csp/templates/mon-bot-csp.service.j2 => sys-hlth-csp/templates/sys-hlth-csp.service.j2} (82%) create mode 100644 roles/sys-hlth-csp/vars/main.yml rename roles/{mon-bot-disc-space => sys-hlth-disc-space}/README.md (79%) rename roles/{mon-bot-disc-space/files/mon-bot-disc-space.sh => sys-hlth-disc-space/files/sys-hlth-disc-space.sh} (100%) create mode 100644 roles/sys-hlth-disc-space/handlers/main.yml rename roles/{mon-bot-disc-space => sys-hlth-disc-space}/meta/main.yml (96%) create mode 100644 roles/sys-hlth-disc-space/tasks/main.yml create mode 100644 roles/sys-hlth-disc-space/templates/sys-hlth-disc-space.service.j2 create mode 100644 roles/sys-hlth-disc-space/vars/main.yml rename roles/{mon-bot-docker-container => sys-hlth-docker-container}/README.md (70%) rename roles/{mon-bot-docker-container/files/mon-bot-docker-container.sh => sys-hlth-docker-container/files/sys-hlth-docker-container.sh} (100%) create mode 100644 roles/sys-hlth-docker-container/handlers/main.yml rename roles/{mon-bot-docker-container => sys-hlth-docker-container}/meta/main.yml (96%) rename roles/{mon-bot-docker-container => sys-hlth-docker-container}/tasks/main.yml (62%) create mode 100644 roles/sys-hlth-docker-container/templates/sys-hlth-docker-container.service.j2 create mode 100644 roles/sys-hlth-docker-container/vars/main.yml rename roles/{mon-bot-docker-volumes => sys-hlth-docker-volumes}/README.md (73%) rename roles/{mon-bot-docker-volumes/files/mon-bot-docker-volumes.sh => sys-hlth-docker-volumes/files/sys-hlth-docker-volumes.sh} (100%) create mode 100644 roles/sys-hlth-docker-volumes/handlers/main.yml rename roles/{mon-bot-docker-volumes => sys-hlth-docker-volumes}/meta/main.yml (96%) rename roles/{mon-bot-docker-volumes => sys-hlth-docker-volumes}/tasks/main.yml (63%) create mode 100644 roles/sys-hlth-docker-volumes/templates/sys-hlth-docker-volumes.service.j2 create mode 100644 roles/sys-hlth-docker-volumes/vars/main.yml rename roles/{mon-bot-journalctl => sys-hlth-journalctl}/README.md (83%) rename roles/{mon-bot-journalctl/files/mon-bot-journalctl.sh => sys-hlth-journalctl/files/sys-hlth-journalctl.sh} (100%) create mode 100644 roles/sys-hlth-journalctl/handlers/main.yml rename roles/{mon-bot-journalctl => sys-hlth-journalctl}/meta/main.yml (96%) rename roles/{mon-bot-journalctl => sys-hlth-journalctl}/tasks/main.yml (63%) create mode 100644 roles/sys-hlth-journalctl/templates/sys-hlth-journalctl.service.j2 create mode 100644 roles/sys-hlth-journalctl/vars/main.yml create mode 100644 roles/sys-hlth-msmtp/README.md create mode 100644 roles/sys-hlth-msmtp/handlers/main.yml rename roles/{mon-bot-msmtp => sys-hlth-msmtp}/meta/main.yml (96%) create mode 100644 roles/sys-hlth-msmtp/tasks/main.yml create mode 100644 roles/sys-hlth-msmtp/templates/sys-hlth-msmtp.service.j2 rename roles/{mon-bot-msmtp/templates/mon-bot-msmtp.sh.j2 => sys-hlth-msmtp/templates/sys-hlth-msmtp.sh.j2} (100%) create mode 100644 roles/sys-hlth-msmtp/vars/main.yml rename roles/{mon-bot-webserver => sys-hlth-webserver}/README.md (93%) rename roles/{mon-bot-webserver => sys-hlth-webserver}/TODO.md (100%) create mode 100644 roles/sys-hlth-webserver/handlers/main.yml rename roles/{mon-bot-webserver => sys-hlth-webserver}/meta/main.yml (97%) rename roles/{mon-bot-webserver => sys-hlth-webserver}/tasks/main.yml (66%) rename roles/{mon-bot-webserver/templates/mon-bot-webserver.py.j2 => sys-hlth-webserver/templates/sys-hlth-webserver.py.j2} (100%) create mode 100644 roles/sys-hlth-webserver/templates/sys-hlth-webserver.service.j2 create mode 100644 roles/sys-hlth-webserver/vars/main.yml rename roles/{maint-lock => sys-lock}/README.md (100%) rename roles/{maint-lock/files/maint-lock.py => sys-lock/files/sys-lock.py} (100%) rename roles/{maint-lock => sys-lock}/meta/main.yml (100%) rename roles/{maint-lock => sys-lock}/tasks/main.yml (93%) rename roles/{cln-docker-storage-optimizer => sys-opt-ssd-hdd}/README.md (100%) create mode 100644 roles/sys-opt-ssd-hdd/files/__init__.py rename roles/{cln-docker-storage-optimizer/files/cln-docker-storage-optimizer.py => sys-opt-ssd-hdd/files/sys-opt-ssd-hdd.py} (100%) create mode 100644 roles/sys-opt-ssd-hdd/handlers/main.yml rename roles/{cln-docker-storage-optimizer => sys-opt-ssd-hdd}/meta/main.yml (100%) create mode 100644 roles/sys-opt-ssd-hdd/tasks/main.yml rename roles/{cln-docker-storage-optimizer/templates/cln-docker-storage-optimizer.service.j2 => sys-opt-ssd-hdd/templates/sys-opt-ssd-hdd.service.j2} (56%) create mode 100644 roles/sys-opt-ssd-hdd/vars/main.yml rename roles/{maint-swapfile => sys-opt-swapfile}/README.md (100%) rename roles/{maint-swapfile => sys-opt-swapfile}/meta/main.yml (95%) rename roles/{maint-swapfile => sys-opt-swapfile}/tasks/main.yml (100%) create mode 100644 roles/sys-opt-swapfile/vars/main.yml rename roles/{maint-btrfs-auto-balancer => sys-rpr-btrfs-blnc}/README.md (94%) create mode 100644 roles/sys-rpr-btrfs-blnc/handlers/main.yml rename roles/{maint-btrfs-auto-balancer => sys-rpr-btrfs-blnc}/meta/main.yml (97%) rename roles/{maint-btrfs-auto-balancer => sys-rpr-btrfs-blnc}/tasks/main.yml (69%) rename roles/{maint-btrfs-auto-balancer/templates/maint-btrfs-auto-balancer.service.j2 => sys-rpr-btrfs-blnc/templates/sys-rpr-btrfs-blnc.service.j2} (71%) rename roles/{maint-btrfs-auto-balancer => sys-rpr-btrfs-blnc}/vars/main.yml (70%) rename roles/{maint-docker-restart => sys-rpr-docker-hard}/README.md (100%) rename roles/{maint-docker-restart/files/maint-docker-restart.py => sys-rpr-docker-hard/files/sys-rpr-docker-hard.py} (100%) create mode 100644 roles/sys-rpr-docker-hard/handlers/main.yml rename roles/{maint-docker-restart => sys-rpr-docker-hard}/meta/main.yml (98%) rename roles/{maint-docker-restart => sys-rpr-docker-hard}/tasks/main.yml (63%) rename roles/{maint-docker-restart/templates/maint-docker-restart.service.j2 => sys-rpr-docker-hard/templates/sys-rpr-docker-hard.service.j2} (62%) create mode 100644 roles/sys-rpr-docker-hard/vars/main.yml rename roles/{maint-docker-heal => sys-rpr-docker-soft}/README.md (100%) rename roles/{maint-docker-heal/files/maint-docker-heal.py => sys-rpr-docker-soft/files/sys-rpr-docker-soft.py} (97%) create mode 100644 roles/sys-rpr-docker-soft/handlers/main.yml rename roles/{maint-docker-heal => sys-rpr-docker-soft}/meta/main.yml (97%) rename roles/{maint-docker-heal => sys-rpr-docker-soft}/tasks/main.yml (58%) create mode 100644 roles/sys-rpr-docker-soft/templates/sys-rpr-docker-soft.service.j2 create mode 100644 roles/sys-rpr-docker-soft/vars/main.yml rename roles/{core-daemon => sys-rst-daemon}/README.md (100%) rename roles/{core-daemon => sys-rst-daemon}/meta/main.yml (96%) rename roles/{core-daemon => sys-rst-daemon}/tasks/main.yml (100%) rename roles/{core-daemon => sys-rst-daemon}/tasks/reset.yml (100%) rename roles/{core-sudo => sys-sudo}/README.md (100%) rename roles/{core-sudo => sys-sudo}/files/sudoers (100%) rename roles/{core-sudo => sys-sudo}/meta/main.yml (100%) rename roles/{core-sudo => sys-sudo}/tasks/main.yml (100%) rename roles/{core-journalctl => sys-svc-journalctl}/README.md (88%) rename roles/{core-journalctl => sys-svc-journalctl}/handlers/main.yml (100%) rename roles/{core-journalctl => sys-svc-journalctl}/meta/main.yml (92%) rename roles/{core-journalctl => sys-svc-journalctl}/tasks/main.yml (100%) rename roles/{core-journalctl => sys-svc-journalctl}/templates/journald.conf.j2 (100%) rename roles/{gen-msmtp => sys-svc-msmtp}/README.md (100%) rename roles/{gen-msmtp => sys-svc-msmtp}/meta/main.yml (97%) rename roles/{gen-msmtp => sys-svc-msmtp}/tasks/main.yml (100%) rename roles/{gen-msmtp => sys-svc-msmtp}/templates/msmtprc.conf.j2 (100%) rename roles/{core-sshd => sys-svc-sshd}/README.md (100%) rename roles/{core-sshd => sys-svc-sshd}/handlers/main.yml (100%) rename roles/{core-sshd => sys-svc-sshd}/meta/main.yml (100%) rename roles/{core-sshd => sys-svc-sshd}/tasks/main.yml (100%) rename roles/{core-sshd => sys-svc-sshd}/templates/sshd_config.j2 (100%) rename roles/{gen-timer => sys-timer}/README.md (100%) rename roles/{gen-timer => sys-timer}/meta/main.yml (100%) rename roles/{gen-timer => sys-timer}/tasks/main.yml (100%) rename roles/{gen-timer => sys-timer}/tasks/reset.yml (100%) rename roles/{gen-timer => sys-timer}/templates/dummy.timer.j2 (100%) rename roles/{update => update-compose}/meta/main.yml (100%) rename roles/{update => update-compose}/tasks/README.md (100%) rename roles/{update => update-compose}/tasks/main.yml (100%) create mode 100644 tests/integration/test_no_application_id.py create mode 100644 tests/unit/roles/sys-opt-ssd-hdd/__init__.py rename tests/unit/roles/{cln-docker-storage-optimizer => sys-opt-ssd-hdd}/test_storage_optimizer.py (94%) diff --git a/docs/analysis/Features.md b/docs/analysis/Features.md index 527b7ba3..1b775f36 100644 --- a/docs/analysis/Features.md +++ b/docs/analysis/Features.md @@ -12,10 +12,10 @@ CyMaIS covers everything from essential system setups to advanced configurations Every business is unique, and so is CyMaIS! With a modular architecture, it adapts to specific requirements, whether for startups, growing businesses, NGOs, or large enterprises. ## Proactive Monitoring & Maintenance šŸ” -With automated updates, system health checks, and security audits, CyMaIS ensures your infrastructure is always up-to-date and running smoothly. Roles such as `mon-bot-docker-container`, `mon-bot-btrfs`, and `mon-bot-webserver` help monitor system integrity. +With automated updates, system health checks, and security audits, CyMaIS ensures your infrastructure is always up-to-date and running smoothly. Roles such as `sys-hlth-docker-container`, `sys-hlth-btrfs`, and `sys-hlth-webserver` help monitor system integrity. ## Uncompromised Security šŸ”’ -Security is a top priority! CyMaIS includes robust security features like full-disk encryption recommendations, 2FA enforcement, encrypted server deployments (`web-app-keycloak`, `svc-openldap`), and secure backup solutions (`bkp-remote-to-local`, `bkp-data-to-usb`). +Security is a top priority! CyMaIS includes robust security features like full-disk encryption recommendations, 2FA enforcement, encrypted server deployments (`web-app-keycloak`, `svc-openldap`), and secure backup solutions (`sys-bkp-remote-to-local`, `svc-sys-bkp-data-to-usb`). ## User-Friendly with Expert Support šŸ‘©ā€šŸ’» No need to be a Linux or Docker expert! CyMaIS simplifies deployment with intuitive role-based automation. Documentation and community support make IT administration accessible to all experience levels. diff --git a/docs/guides/administrator/Readme.md b/docs/guides/administrator/Readme.md index eb22498b..ab718cbc 100644 --- a/docs/guides/administrator/Readme.md +++ b/docs/guides/administrator/Readme.md @@ -10,13 +10,13 @@ Follow these guides to install and configure CyMaIS: ## Key Responsibilities šŸ”§ - **User Management** - Configure LDAP, Keycloak, and user permissions. -- **Security & Backups** - Set up `bkp-remote-to-local`, `bkp-data-to-usb`, and `core-security` roles. +- **Security & Backups** - Set up `sys-bkp-remote-to-local`, `svc-sys-bkp-data-to-usb`, and `core-security` roles. - **Application Hosting** - Deploy services like `Nextcloud`, `Matrix`, `Gitea`, and more. - **Networking & VPN** - Configure `WireGuard`, `OpenVPN`, and `Nginx Reverse Proxy`. ## Managing & Updating CyMaIS šŸ”„ - Regularly update services using `update-docker`, `update-pacman`, or `update-apt`. -- Monitor system health with `mon-bot-btrfs`, `mon-bot-webserver`, and `mon-bot-docker-container`. -- Automate system maintenance with `maint-lock`, `cln-backups-service`, and `maint-docker-restart`. +- Monitor system health with `sys-hlth-btrfs`, `sys-hlth-webserver`, and `sys-hlth-docker-container`. +- Automate system maintenance with `sys-lock`, `sys-cln-bkps-service`, and `sys-rpr-docker-hard`. For more details, refer to the specific guides above. \ No newline at end of file diff --git a/group_vars/all/05_maintenace.yml b/group_vars/all/05_maintenace.yml index 99d921ac..43fc1ac0 100644 --- a/group_vars/all/05_maintenace.yml +++ b/group_vars/all/05_maintenace.yml @@ -13,23 +13,23 @@ system_maintenance_lock_timeout_restart_docker: "{{system_maintenance_lock_ti ### Defined Services for Backup Tasks system_maintenance_backup_services: - - "bkp-docker-to-local" - - "bkp-remote-to-local" - - "bkp-data-to-usb" - - "bkp-docker-to-local-everything" + - "sys-bkp-docker-to-local" + - "svc-sys-bkp-rmt-2-loc" + - "svc-sys-bkp-data-to-usb" + - "sys-bkp-docker-to-local-everything" ### Defined Services for System Cleanup system_maintenance_cleanup_services: - - "cln-backups" - - "cln-disc-space" - - "cln-failed-docker-backups" + - "sys-cln-backups" + - "sys-cln-disc-space" + - "sys-cln-faild-bkps" ### Services that Manipulate the System system_maintenance_manipulation_services: - - "maint-docker-heal" + - "sys-rpr-docker-soft" - "update-docker" - - "cln-docker-storage-optimizer" - - "maint-docker-restart" + - "sys-opt-ssd-hdd" + - "sys-rpr-docker-hard" ## Total System Maintenance Services system_maintenance_services: "{{ system_maintenance_backup_services + system_maintenance_cleanup_services + system_maintenance_manipulation_services }}" diff --git a/group_vars/all/07_paths.yml b/group_vars/all/07_paths.yml index 4b6f2b8b..7eeacef0 100644 --- a/group_vars/all/07_paths.yml +++ b/group_vars/all/07_paths.yml @@ -3,4 +3,4 @@ path_administrator_home: "/home/administrator/" path_administrator_scripts: "/opt/scripts/" path_docker_compose_instances: "/opt/docker/" -path_system_lock_script: "/opt/scripts/maint-lock.py" \ No newline at end of file +path_system_lock_script: "/opt/scripts/sys-lock.py" \ No newline at end of file diff --git a/roles/README.md b/roles/README.md index ae728674..aa7dd8af 100644 --- a/roles/README.md +++ b/roles/README.md @@ -15,7 +15,7 @@ For a complete list of role categories and detailed definitions, see: Fundamental system configuration (SSH, journald, sudo, etc.) - **gen-*** - Generic helpers and language/tool installers (e.g. `gen-git`, `gen-locales`, `gen-timer`) + Generic helpers and language/tool installers (e.g. `gen-git`, `gen-locales`, `sys-timer`) - **desk-*** Desktop environment and application roles (e.g. `desk-gnome`, `desk-browser`, `desk-libreoffice`) @@ -59,13 +59,13 @@ For a complete list of role categories and detailed definitions, see: ## Monitoring & Alerting -- **mon-bot-*** +- **sys-hlth-*** ā€œBotā€-style health checks (Btrfs, disk‐space, Docker, journalctl, CSP crawler, webserver) with alerts. - **monitor-core-*** Low-level system monitors (journalctl, Docker containers, disk space, etc.) -- **alert-*** +- **sys-alm-*** Notification handlers for failures (core, email, Telegram). --- @@ -78,14 +78,14 @@ For a complete list of role categories and detailed definitions, see: - **maint-docker-*** Automated recovery and restarts for Docker Compose workloads. -- **cln-*** +- **sys-cln-*** Housekeeping tasks (old backups, expired certs, log rotation). --- ## Backup & Restore -- **bkp-*** +- **sys-bkp-*** Local and remote backup strategies for files, Docker volumes, databases. --- @@ -112,8 +112,8 @@ For a complete list of role categories and detailed definitions, see: > **Tip:** To find a role quickly, search for its prefix: > `core-`, `gen-`, `desk-`, `srv-web-`, `web-svc-`, `web-app-`, -> `net-`, `svc-`, `mon-bot-`, `monitor-core-`, `alert-`, -> `maint-`, `maint-docker-`, `cln-`, `bkp-`, `update-`, +> `net-`, `svc-`, `sys-hlth-`, `monitor-core-`, `sys-alm-`, +> `maint-`, `maint-docker-`, `sys-cln-`, `sys-bkp-`, `update-`, > `pkgmgr-`, `user-`. --- diff --git a/roles/alert-compose/templates/alert-compose@.service.j2 b/roles/alert-compose/templates/alert-compose@.service.j2 deleted file mode 100644 index ea5605f6..00000000 --- a/roles/alert-compose/templates/alert-compose@.service.j2 +++ /dev/null @@ -1,8 +0,0 @@ -[Unit] -Description=Notifier for %i - -[Service] -Type=oneshot -ExecStart=/usr/bin/systemctl start alert-telegram.cymais@%i.service alert-email.cymais@%i.service -User=root -Group=systemd-journal diff --git a/roles/alert-email/handlers/main.yml b/roles/alert-email/handlers/main.yml deleted file mode 100644 index 7b9e759e..00000000 --- a/roles/alert-email/handlers/main.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: "restart alert-email service" - systemd: - name: alert-email.cymais.service - daemon_reload: yes diff --git a/roles/alert-email/vars/main.yml b/roles/alert-email/vars/main.yml deleted file mode 100644 index 8dcd52a1..00000000 --- a/roles/alert-email/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -systemd_notifier_email_folder: '{{path_administrator_scripts}}alert-email/' -application_id: email diff --git a/roles/alert-telegram/handlers/main.yml b/roles/alert-telegram/handlers/main.yml deleted file mode 100644 index 27aa8986..00000000 --- a/roles/alert-telegram/handlers/main.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: "restart alert-telegram service" - systemd: - name: alert-telegram.cymais.service - daemon_reload: yes diff --git a/roles/alert-telegram/vars/main.yml b/roles/alert-telegram/vars/main.yml deleted file mode 100644 index 50048eed..00000000 --- a/roles/alert-telegram/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -systemd_telegram_folder: /opt/ansible-roles/alert-telegram/ -systemd_telegram_script: '{{systemd_telegram_folder}}alert-telegram.sh' diff --git a/roles/bkp-data-to-usb/handlers/main.yml b/roles/bkp-data-to-usb/handlers/main.yml deleted file mode 100644 index 84cd00a8..00000000 --- a/roles/bkp-data-to-usb/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload bkp-data-to-usb.cymais.service" - systemd: - name: bkp-data-to-usb.cymais.service - state: reloaded - daemon_reload: yes diff --git a/roles/bkp-directory-validator/vars/main.yml b/roles/bkp-directory-validator/vars/main.yml deleted file mode 100644 index fe00a370..00000000 --- a/roles/bkp-directory-validator/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -backup_directory_validator_folder: '{{path_administrator_scripts}}directory-validator/' -application_id: directory-validator diff --git a/roles/bkp-docker-to-local/handlers/main.yml b/roles/bkp-docker-to-local/handlers/main.yml deleted file mode 100644 index a06a33a7..00000000 --- a/roles/bkp-docker-to-local/handlers/main.yml +++ /dev/null @@ -1,9 +0,0 @@ -- name: "reload bkp-docker-to-local-everything.cymais.service" - systemd: - name: bkp-docker-to-local-everything.cymais.service - daemon_reload: yes - -- name: "reload bkp-docker-to-local.cymais.service" - systemd: - name: bkp-docker-to-local.cymais.service - daemon_reload: yes \ No newline at end of file diff --git a/roles/bkp-provider/vars/main.yml b/roles/bkp-provider/vars/main.yml deleted file mode 100644 index 0b665467..00000000 --- a/roles/bkp-provider/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: provider diff --git a/roles/bkp-remote-to-local/handlers/main.yml b/roles/bkp-remote-to-local/handlers/main.yml deleted file mode 100644 index 7796ffc2..00000000 --- a/roles/bkp-remote-to-local/handlers/main.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: "reload bkp-remote-to-local service" - systemd: - name: bkp-remote-to-local.cymais.service - daemon_reload: yes diff --git a/roles/bkp-remote-to-local/vars/main.yml b/roles/bkp-remote-to-local/vars/main.yml deleted file mode 100644 index a550d22f..00000000 --- a/roles/bkp-remote-to-local/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -docker_backup_remote_to_local_folder: '{{path_administrator_scripts}}bkp-remote-to-local/' -application_id: bkp-remote-to-local diff --git a/roles/categories.yml b/roles/categories.yml index 4414ec66..b434d44c 100644 --- a/roles/categories.yml +++ b/roles/categories.yml @@ -1,14 +1,41 @@ roles: - core: - title: "Core & System" - description: "Fundamental system configuration" - icon: "fas fa-cogs" - invokable: true + sys: + title: "System" + alm: + title: "Alerting" + description: "Notification handlers for system events" + icon: "fas fa-bell" + invokable: false + cln: + title: "Cleanup" + description: "Roles for cleaning up various system resources—old backups, unused certificates, temporary files, Docker volumes, disk caches, deprecated domains, and more." + icon: "fas fa-trash-alt" + invokable: false + hlth: + title: "Monitoring" + description: "Roles for system monitoring and health checks—encompassing bot-style automated checks and core low-level monitors for logs, containers, disk usage, and more." + icon: "fas fa-chart-area" + invokable: false + bkp: + title: "Backup & Restore" + description: "Backup strategies & restore procedures" + icon: "fas fa-hdd" + invokable: false + update: + title: "Updates & Package Management" + description: "OS & package updates" + icon: "fas fa-sync" + invokable: false drv: title: "Drivers" description: "Roles for installing and configuring hardware drivers—covering printers, graphics, input devices, and other peripheral support." icon: "fas fa-microchip" invokable: true + core: + title: "Core & System" + description: "Fundamental system configuration" + icon: "fas fa-cogs" + invokable: true gen: title: "Generic" description: "Helper roles & installers (git, locales, timer, etc.)" @@ -73,38 +100,8 @@ roles: description: "Docker infrastructure services (DBMS, LDAP, Redis, etc.)" icon: "fas fa-database" invokable: true - mon: - title: "Monitoring" - description: "Roles for system monitoring and health checks—encompassing bot-style automated checks and core low-level monitors for logs, containers, disk usage, and more." - icon: "fas fa-chart-area" - invokable: true - alert: - title: "Alerting" - description: "Notification handlers for system events" - icon: "fas fa-bell" - invokable: false - maint: - title: "Maintenance & Healing" - description: "Periodic maintenance & auto-recovery" - icon: "fas fa-tools" - invokable: true - bkp: - title: "Backup & Restore" - description: "Backup strategies & restore procedures" - icon: "fas fa-hdd" - invokable: true - update: - title: "Updates & Package Management" - description: "OS & package updates" - icon: "fas fa-sync" - invokable: true user: title: "Users & Access" description: "User accounts & access control" icon: "fas fa-users" invokable: false - cln: - title: "Cleanup" - description: "Roles for cleaning up various system resources—old backups, unused certificates, temporary files, Docker volumes, disk caches, deprecated domains, and more." - icon: "fas fa-trash-alt" - invokable: true diff --git a/roles/cln-backups-service/handlers/main.yml b/roles/cln-backups-service/handlers/main.yml deleted file mode 100644 index 2c851ce3..00000000 --- a/roles/cln-backups-service/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload cln-backups.cymais.service" - systemd: - name: cln-backups.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/cln-backups-service/vars/main.yml b/roles/cln-backups-service/vars/main.yml deleted file mode 100644 index 8ea269e7..00000000 --- a/roles/cln-backups-service/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -cleanup_backups_directory: '{{path_administrator_scripts}}cln-backups/' -application_id: backups-service diff --git a/roles/cln-backups-timer/vars/main.yml b/roles/cln-backups-timer/vars/main.yml deleted file mode 100644 index 1e83fccf..00000000 --- a/roles/cln-backups-timer/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: backups-timer diff --git a/roles/cln-certs/handlers/main.yml b/roles/cln-certs/handlers/main.yml deleted file mode 100644 index 47b295a5..00000000 --- a/roles/cln-certs/handlers/main.yml +++ /dev/null @@ -1,6 +0,0 @@ -- name: "Reload and restart cln-certs.cymais.service" - systemd: - name: cln-certs.cymais.service - enabled: yes - daemon_reload: yes - state: restarted \ No newline at end of file diff --git a/roles/cln-certs/vars/main.yml b/roles/cln-certs/vars/main.yml deleted file mode 100644 index c2600a87..00000000 --- a/roles/cln-certs/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: certs diff --git a/roles/cln-disc-space/handlers/main.yml b/roles/cln-disc-space/handlers/main.yml deleted file mode 100644 index d74c67fa..00000000 --- a/roles/cln-disc-space/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload cln-disc-space.cymais.service" - systemd: - name: cln-disc-space.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/cln-disc-space/tasks/main.yml b/roles/cln-disc-space/tasks/main.yml deleted file mode 100644 index 78c8aab2..00000000 --- a/roles/cln-disc-space/tasks/main.yml +++ /dev/null @@ -1,26 +0,0 @@ -- name: "create {{cleanup_disc_space_folder}}" - file: - path: "{{cleanup_disc_space_folder}}" - state: directory - mode: 0755 - -- name: create cln-disc-space.sh - template: - src: cln-disc-space.sh.j2 - dest: "{{cleanup_disc_space_folder}}cln-disc-space.sh" - -- name: create cln-disc-space.cymais.service - template: - src: cln-disc-space.service.j2 - dest: /etc/systemd/system/cln-disc-space.cymais.service - notify: reload cln-disc-space.cymais.service - -- name: "set 'service_name' to '{{ role_name }}'" - set_fact: - service_name: "{{ role_name }}" - -- name: "include role for gen-timer for {{service_name}}" - include_role: - name: gen-timer - vars: - on_calendar: "{{on_calendar_cleanup_disc_space}}" \ No newline at end of file diff --git a/roles/cln-disc-space/vars/main.yml b/roles/cln-disc-space/vars/main.yml deleted file mode 100644 index 5d45dcb5..00000000 --- a/roles/cln-disc-space/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -cleanup_disc_space_folder: '{{path_administrator_scripts}}cln-disc-space/' -application_id: disc-space diff --git a/roles/cln-docker-anonymous-volumes/vars/main.yml b/roles/cln-docker-anonymous-volumes/vars/main.yml deleted file mode 100644 index acae31a0..00000000 --- a/roles/cln-docker-anonymous-volumes/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: docker-anonymous-volumes diff --git a/roles/cln-docker-storage-optimizer/handlers/main.yml b/roles/cln-docker-storage-optimizer/handlers/main.yml deleted file mode 100644 index 39f1909a..00000000 --- a/roles/cln-docker-storage-optimizer/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload cln-docker-storage-optimizer.cymais.service" - systemd: - name: cln-docker-storage-optimizer.cymais.service - state: reloaded - daemon_reload: yes diff --git a/roles/cln-docker-storage-optimizer/tasks/main.yml b/roles/cln-docker-storage-optimizer/tasks/main.yml deleted file mode 100644 index c51a6888..00000000 --- a/roles/cln-docker-storage-optimizer/tasks/main.yml +++ /dev/null @@ -1,22 +0,0 @@ -- name: "create {{storage_optimizer_directory}}" - file: - path: "{{storage_optimizer_directory}}" - state: directory - mode: 0755 - -- name: create cln-docker-storage-optimizer.cymais.service - template: - src: cln-docker-storage-optimizer.service.j2 - dest: /etc/systemd/system/cln-docker-storage-optimizer.cymais.service - notify: reload cln-docker-storage-optimizer.cymais.service - -- name: create cln-docker-storage-optimizer.py - copy: - src: cln-docker-storage-optimizer.py - dest: "{{storage_optimizer_script}}" - mode: 0755 - -- name: "optimize storage performance" - systemd: - name: cln-docker-storage-optimizer.cymais.service - state: started \ No newline at end of file diff --git a/roles/cln-docker-storage-optimizer/vars/main.yml b/roles/cln-docker-storage-optimizer/vars/main.yml deleted file mode 100644 index 521ac869..00000000 --- a/roles/cln-docker-storage-optimizer/vars/main.yml +++ /dev/null @@ -1,3 +0,0 @@ -storage_optimizer_directory: '{{path_administrator_scripts}}cln-docker-storage-optimizer/' -storage_optimizer_script: '{{storage_optimizer_directory}}cln-docker-storage-optimizer.py' -application_id: docker-storage-optimizer diff --git a/roles/cln-domains/vars/main.yml b/roles/cln-domains/vars/main.yml deleted file mode 100644 index b1282f6f..00000000 --- a/roles/cln-domains/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: domains diff --git a/roles/cln-failed-docker-backups/handlers/main.yml b/roles/cln-failed-docker-backups/handlers/main.yml deleted file mode 100644 index 1c0cd478..00000000 --- a/roles/cln-failed-docker-backups/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "Reload cln-failed-docker-backups.cymais.service" - systemd: - name: cln-failed-docker-backups.cymais.service - enabled: yes - daemon_reload: yes \ No newline at end of file diff --git a/roles/cmp-rdbms-orchestrator/tasks/main.yml b/roles/cmp-rdbms-orchestrator/tasks/main.yml index 82505e92..10b7a7e2 100644 --- a/roles/cmp-rdbms-orchestrator/tasks/main.yml +++ b/roles/cmp-rdbms-orchestrator/tasks/main.yml @@ -13,4 +13,4 @@ when: applications | is_feature_enabled('central_database',application_id) - name: "Add database to backup" - include_tasks: "{{ playbook_dir }}/roles/bkp-docker-to-local/tasks/seed-database-to-backup.yml" \ No newline at end of file + include_tasks: "{{ playbook_dir }}/roles/sys-bkp-docker-to-local/tasks/seed-database-to-backup.yml" \ No newline at end of file diff --git a/roles/core-daemon/vars/main.yml b/roles/core-daemon/vars/main.yml deleted file mode 100644 index bfc43923..00000000 --- a/roles/core-daemon/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: daemon diff --git a/roles/core-journalctl/vars/main.yml b/roles/core-journalctl/vars/main.yml deleted file mode 100644 index 20414dcf..00000000 --- a/roles/core-journalctl/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: journalctl diff --git a/roles/core-security/README.md b/roles/core-security/README.md deleted file mode 100644 index 03a69086..00000000 --- a/roles/core-security/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# System Security - -## Description - -This role configures security-related settings on the target system to ensure that essential security services are properly managed. It reinforces system security by integrating with related roles and enforcing best practices. - -## Overview - -The role focuses on: -- Configuring key security services such as [SSH](https://en.wikipedia.org/wiki/Secure_Shell). -- Integrating with other security roles to maintain a robust system security posture. -- Ensuring that security configurations are applied consistently across the system. - -## Purpose - -The primary purpose of this role is to enhance overall system security by managing and configuring essential security services and settings. - -## Features - -- **Security Configuration:** Applies recommended security settings for core services. -- **Integration:** Works alongside related roles such as [sshd](https://en.wikipedia.org/wiki/SSH_daemon) to provide comprehensive security management. diff --git a/roles/core-security/meta/main.yml b/roles/core-security/meta/main.yml deleted file mode 100644 index be9a7ea2..00000000 --- a/roles/core-security/meta/main.yml +++ /dev/null @@ -1,24 +0,0 @@ ---- -galaxy_info: - author: "Kevin Veen-Birkenbach" - description: "Configures security-related settings on the target system and ensures essential security services are properly managed." - license: "CyMaIS NonCommercial License (CNCL)" - license_url: "https://s.veen.world/cncl" - company: | - Kevin Veen-Birkenbach - Consulting & Coaching Solutions - https://www.veen.world - min_ansible_version: "2.9" - platforms: - - name: Linux - versions: - - all - galaxy_tags: - - security - - ssh - - system - repository: "https://s.veen.world/cymais" - issue_tracker_url: "https://s.veen.world/cymaisissues" - documentation: "https://s.veen.world/cymais" -dependencies: - - core-sshd \ No newline at end of file diff --git a/roles/core-security/vars/main.yml b/roles/core-security/vars/main.yml deleted file mode 100644 index 52e5a494..00000000 --- a/roles/core-security/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: security diff --git a/roles/core-sshd/vars/main.yml b/roles/core-sshd/vars/main.yml deleted file mode 100644 index 5c4a4098..00000000 --- a/roles/core-sshd/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: sshd diff --git a/roles/core-sudo/vars/main.yml b/roles/core-sudo/vars/main.yml deleted file mode 100644 index 5a574666..00000000 --- a/roles/core-sudo/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: sudo diff --git a/roles/desk-nextcloud-client/README.md b/roles/desk-nextcloud-client/README.md index cc618e21..499c79d0 100644 --- a/roles/desk-nextcloud-client/README.md +++ b/roles/desk-nextcloud-client/README.md @@ -10,7 +10,7 @@ Targeting user environments on Arch Linux (e.g., Manjaro), this role sets up the ## Purpose -The purpose of this role is to automate the configuration of cloud-integrated user directories by ensuring that common folders like `Downloads`, `Music`, and `Workspaces` are transparently redirected into a centralized cloud structure. This makes it easier to maintain bkp-friendly, cloud-ready setups for homelab and professional workflows. +The purpose of this role is to automate the configuration of cloud-integrated user directories by ensuring that common folders like `Downloads`, `Music`, and `Workspaces` are transparently redirected into a centralized cloud structure. This makes it easier to maintain sys-bkp-friendly, cloud-ready setups for homelab and professional workflows. ## Features diff --git a/roles/docker-core/meta/main.yml b/roles/docker-core/meta/main.yml index 283188dd..df1cbc9b 100644 --- a/roles/docker-core/meta/main.yml +++ b/roles/docker-core/meta/main.yml @@ -27,9 +27,9 @@ galaxy_info: documentation: "https://s.veen.world/cymais/docker" dependencies: - - bkp-docker-to-local + - sys-bkp-docker-to-local - user-administrator - - mon-bot-docker-container - - mon-bot-docker-volumes - - maint-docker-heal - - maint-docker-restart + - sys-hlth-docker-container + - sys-hlth-docker-volumes + - sys-rpr-docker-soft + - sys-rpr-docker-hard diff --git a/roles/docker-core/tasks/main.yml b/roles/docker-core/tasks/main.yml index e5d196c4..7f062e68 100644 --- a/roles/docker-core/tasks/main.yml +++ b/roles/docker-core/tasks/main.yml @@ -16,7 +16,7 @@ group: administrator when: run_once_docker is not defined -- name: Set docker_enabled to true, to activate cln-docker-storage-optimizer +- name: Set docker_enabled to true, to activate sys-opt-ssd-hdd set_fact: docker_enabled: true when: run_once_docker is not defined diff --git a/roles/drv-msi-keyboard-color/meta/main.yml b/roles/drv-msi-keyboard-color/meta/main.yml index 84252132..06e53189 100644 --- a/roles/drv-msi-keyboard-color/meta/main.yml +++ b/roles/drv-msi-keyboard-color/meta/main.yml @@ -9,4 +9,4 @@ galaxy_info: - all dependencies: - gen-aur-helper - - alert-compose + - sys-alm-compose diff --git a/roles/drv-msi-keyboard-color/tasks/main.yml b/roles/drv-msi-keyboard-color/tasks/main.yml index 7dee8bf2..f595f082 100644 --- a/roles/drv-msi-keyboard-color/tasks/main.yml +++ b/roles/drv-msi-keyboard-color/tasks/main.yml @@ -25,9 +25,9 @@ set_fact: service_name: "{{ role_name }}" -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_msi_keyboard_color}}" persistent: "true" diff --git a/roles/drv-msi-keyboard-color/templates/keyboard-color.service.j2 b/roles/drv-msi-keyboard-color/templates/keyboard-color.service.j2 index b261dfc2..aa7bed2d 100644 --- a/roles/drv-msi-keyboard-color/templates/keyboard-color.service.j2 +++ b/roles/drv-msi-keyboard-color/templates/keyboard-color.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Keyboard Color Service -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/gen-msmtp/vars/main.yml b/roles/gen-msmtp/vars/main.yml deleted file mode 100644 index 8fb6e613..00000000 --- a/roles/gen-msmtp/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: msmtp diff --git a/roles/gen-timer/vars/main.yml b/roles/gen-timer/vars/main.yml deleted file mode 100644 index 78f57199..00000000 --- a/roles/gen-timer/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: timer diff --git a/roles/maint-btrfs-auto-balancer/handlers/main.yml b/roles/maint-btrfs-auto-balancer/handlers/main.yml deleted file mode 100644 index bca0a726..00000000 --- a/roles/maint-btrfs-auto-balancer/handlers/main.yml +++ /dev/null @@ -1,4 +0,0 @@ -- name: "reload maint-btrfs-auto-balancer.cymais.service" - systemd: - name: maint-btrfs-auto-balancer.cymais.service - daemon_reload: yes \ No newline at end of file diff --git a/roles/maint-docker-heal/handlers/main.yml b/roles/maint-docker-heal/handlers/main.yml deleted file mode 100644 index b5446269..00000000 --- a/roles/maint-docker-heal/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: restart maint-docker-heal.cymais.service - systemd: - name: maint-docker-heal.cymais.service - state: restarted - daemon_reload: yes diff --git a/roles/maint-docker-heal/templates/maint-docker-heal.service.j2 b/roles/maint-docker-heal/templates/maint-docker-heal.service.j2 deleted file mode 100644 index 37351ffb..00000000 --- a/roles/maint-docker-heal/templates/maint-docker-heal.service.j2 +++ /dev/null @@ -1,8 +0,0 @@ -[Unit] -Description=restart unhealthy docker containers -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{system_maintenance_cleanup_services| join(' ') }} maint-docker-heal --timeout "{{system_maintenance_lock_timeout_heal_docker}}"' -ExecStart=/bin/sh -c '/bin/python {{heal_docker}}maint-docker-heal.py {{path_docker_compose_instances}}' \ No newline at end of file diff --git a/roles/maint-docker-heal/vars/main.yml b/roles/maint-docker-heal/vars/main.yml deleted file mode 100644 index fe1126e4..00000000 --- a/roles/maint-docker-heal/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -heal_docker: '{{path_administrator_scripts}}maint-docker-heal/' -application_id: docker-heal diff --git a/roles/maint-docker-restart/handlers/main.yml b/roles/maint-docker-restart/handlers/main.yml deleted file mode 100644 index 1255c791..00000000 --- a/roles/maint-docker-restart/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload maint-docker-restart.cymais.service" - systemd: - name: maint-docker-restart.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/maint-docker-restart/vars/main.yml b/roles/maint-docker-restart/vars/main.yml deleted file mode 100644 index c0df4ee4..00000000 --- a/roles/maint-docker-restart/vars/main.yml +++ /dev/null @@ -1,3 +0,0 @@ -restart_docker_folder: '{{path_administrator_scripts}}maint-docker-restart/' -restart_docker_script: '{{restart_docker_folder}}maint-docker-restart.py' -application_id: docker-restart diff --git a/roles/maint-lock/vars/main.yml b/roles/maint-lock/vars/main.yml deleted file mode 100644 index 06cfcac7..00000000 --- a/roles/maint-lock/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: lock diff --git a/roles/maint-swapfile/vars/main.yml b/roles/maint-swapfile/vars/main.yml deleted file mode 100644 index 23634898..00000000 --- a/roles/maint-swapfile/vars/main.yml +++ /dev/null @@ -1 +0,0 @@ -application_id: swapfile diff --git a/roles/mon-bot-btrfs/handlers/main.yml b/roles/mon-bot-btrfs/handlers/main.yml deleted file mode 100644 index b85086a1..00000000 --- a/roles/mon-bot-btrfs/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-btrfs.cymais.service" - systemd: - name: mon-bot-btrfs.cymais.service - enabled: yes - daemon_reload: yes \ No newline at end of file diff --git a/roles/mon-bot-btrfs/tasks/main.yml b/roles/mon-bot-btrfs/tasks/main.yml deleted file mode 100644 index 78289e47..00000000 --- a/roles/mon-bot-btrfs/tasks/main.yml +++ /dev/null @@ -1,26 +0,0 @@ -- name: "create {{docker_health_btrfs_folder}}" - file: - path: "{{docker_health_btrfs_folder}}" - state: directory - mode: 0755 - -- name: create mon-bot-btrfs.sh - copy: - src: mon-bot-btrfs.sh - dest: "{{docker_health_btrfs_folder}}mon-bot-btrfs.sh" - -- name: create mon-bot-btrfs.cymais.service - template: - src: mon-bot-btrfs.service.j2 - dest: /etc/systemd/system/mon-bot-btrfs.cymais.service - notify: reload mon-bot-btrfs.cymais.service - -- name: "set 'service_name' to '{{ role_name }}'" - set_fact: - service_name: "{{ role_name }}" - -- name: "include role for gen-timer for {{service_name}}" - include_role: - name: gen-timer - vars: - on_calendar: "{{on_calendar_health_btrfs}}" diff --git a/roles/mon-bot-btrfs/templates/mon-bot-btrfs.service.j2 b/roles/mon-bot-btrfs/templates/mon-bot-btrfs.service.j2 deleted file mode 100644 index f9b228fc..00000000 --- a/roles/mon-bot-btrfs/templates/mon-bot-btrfs.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=Check btrfs status -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/bin/bash {{docker_health_btrfs_folder}}mon-bot-btrfs.sh diff --git a/roles/mon-bot-btrfs/vars/main.yml b/roles/mon-bot-btrfs/vars/main.yml deleted file mode 100644 index 093cfecb..00000000 --- a/roles/mon-bot-btrfs/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -docker_health_btrfs_folder: '{{path_administrator_scripts}}mon-bot-btrfs/' -application_id: bot-btrfs diff --git a/roles/mon-bot-csp/handlers/main.yml b/roles/mon-bot-csp/handlers/main.yml deleted file mode 100644 index c0753cd7..00000000 --- a/roles/mon-bot-csp/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-csp.cymais.service" - systemd: - name: mon-bot-csp.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/mon-bot-csp/vars/main.yml b/roles/mon-bot-csp/vars/main.yml deleted file mode 100644 index 5cdd5a7a..00000000 --- a/roles/mon-bot-csp/vars/main.yml +++ /dev/null @@ -1,3 +0,0 @@ -health_csp_crawler_folder: '{{ path_administrator_scripts }}mon-bot-csp/' -health_csp_crawler_script: '{{ health_csp_crawler_folder }}mon-bot-csp.py' -application_id: bot-csp diff --git a/roles/mon-bot-disc-space/handlers/main.yml b/roles/mon-bot-disc-space/handlers/main.yml deleted file mode 100644 index 73a01add..00000000 --- a/roles/mon-bot-disc-space/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-disc-space.cymais.service" - systemd: - name: mon-bot-disc-space.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/mon-bot-disc-space/tasks/main.yml b/roles/mon-bot-disc-space/tasks/main.yml deleted file mode 100644 index 423d8995..00000000 --- a/roles/mon-bot-disc-space/tasks/main.yml +++ /dev/null @@ -1,26 +0,0 @@ -- name: "create {{health_disc_space_folder}}" - file: - path: "{{health_disc_space_folder}}" - state: directory - mode: 0755 - -- name: create mon-bot-disc-space.sh - copy: - src: mon-bot-disc-space.sh - dest: "{{health_disc_space_folder}}mon-bot-disc-space.sh" - -- name: create mon-bot-disc-space.cymais.service - template: - src: mon-bot-disc-space.service.j2 - dest: /etc/systemd/system/mon-bot-disc-space.cymais.service - notify: reload mon-bot-disc-space.cymais.service - -- name: "set 'service_name' to '{{ role_name }}'" - set_fact: - service_name: "{{ role_name }}" - -- name: "include role for gen-timer for {{service_name}}" - include_role: - name: gen-timer - vars: - on_calendar: "{{on_calendar_health_disc_space}}" \ No newline at end of file diff --git a/roles/mon-bot-disc-space/templates/mon-bot-disc-space.service.j2 b/roles/mon-bot-disc-space/templates/mon-bot-disc-space.service.j2 deleted file mode 100644 index 03510b09..00000000 --- a/roles/mon-bot-disc-space/templates/mon-bot-disc-space.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=checking disc space -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/bin/bash {{health_disc_space_folder}}mon-bot-disc-space.sh {{size_percent_disc_space_warning}} diff --git a/roles/mon-bot-disc-space/vars/main.yml b/roles/mon-bot-disc-space/vars/main.yml deleted file mode 100644 index 4cfe1bcd..00000000 --- a/roles/mon-bot-disc-space/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -health_disc_space_folder: '{{path_administrator_scripts}}mon-bot-disc-space/' -application_id: bot-disc-space diff --git a/roles/mon-bot-docker-container/handlers/main.yml b/roles/mon-bot-docker-container/handlers/main.yml deleted file mode 100644 index 86fe08a5..00000000 --- a/roles/mon-bot-docker-container/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-docker-container.cymais.service" - systemd: - name: mon-bot-docker-container.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/mon-bot-docker-container/templates/mon-bot-docker-container.service.j2 b/roles/mon-bot-docker-container/templates/mon-bot-docker-container.service.j2 deleted file mode 100644 index afd5b45c..00000000 --- a/roles/mon-bot-docker-container/templates/mon-bot-docker-container.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=Checking docker health -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/bin/bash {{health_docker_container_folder}}mon-bot-docker-container.sh diff --git a/roles/mon-bot-docker-container/vars/main.yml b/roles/mon-bot-docker-container/vars/main.yml deleted file mode 100644 index ebacad67..00000000 --- a/roles/mon-bot-docker-container/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -health_docker_container_folder: '{{path_administrator_scripts}}mon-bot-docker-container/' -application_id: bot-docker-container diff --git a/roles/mon-bot-docker-volumes/handlers/main.yml b/roles/mon-bot-docker-volumes/handlers/main.yml deleted file mode 100644 index 29eceae7..00000000 --- a/roles/mon-bot-docker-volumes/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-docker-volumes.cymais.service" - systemd: - name: mon-bot-docker-volumes.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/mon-bot-docker-volumes/templates/mon-bot-docker-volumes.service.j2 b/roles/mon-bot-docker-volumes/templates/mon-bot-docker-volumes.service.j2 deleted file mode 100644 index 5e1f341f..00000000 --- a/roles/mon-bot-docker-volumes/templates/mon-bot-docker-volumes.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=Checking docker health -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/bin/bash {{ health_docker_volumes_folder }}mon-bot-docker-volumes.sh "{{ whitelisted_anonymous_docker_volumes | join(' ') }}" diff --git a/roles/mon-bot-docker-volumes/vars/main.yml b/roles/mon-bot-docker-volumes/vars/main.yml deleted file mode 100644 index 1d190ee6..00000000 --- a/roles/mon-bot-docker-volumes/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -health_docker_volumes_folder: '{{path_administrator_scripts}}mon-bot-docker-volumes/' -application_id: bot-docker-volumes diff --git a/roles/mon-bot-journalctl/handlers/main.yml b/roles/mon-bot-journalctl/handlers/main.yml deleted file mode 100644 index 82890d59..00000000 --- a/roles/mon-bot-journalctl/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-journalctl.cymais.service" - systemd: - name: mon-bot-journalctl.cymais.service - enabled: yes - daemon_reload: yes \ No newline at end of file diff --git a/roles/mon-bot-journalctl/templates/mon-bot-journalctl.service.j2 b/roles/mon-bot-journalctl/templates/mon-bot-journalctl.service.j2 deleted file mode 100644 index c71ac199..00000000 --- a/roles/mon-bot-journalctl/templates/mon-bot-journalctl.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=checking journalctl health -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/bin/bash {{health_journalctl_folder}}mon-bot-journalctl.sh diff --git a/roles/mon-bot-journalctl/vars/main.yml b/roles/mon-bot-journalctl/vars/main.yml deleted file mode 100644 index d286ac02..00000000 --- a/roles/mon-bot-journalctl/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -health_journalctl_folder: '{{path_administrator_scripts}}mon-bot-journalctl/' -application_id: bot-journalctl diff --git a/roles/mon-bot-msmtp/README.md b/roles/mon-bot-msmtp/README.md deleted file mode 100644 index 4c9ca5de..00000000 --- a/roles/mon-bot-msmtp/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# mon-bot-msmtp - -## Description - -This Ansible role sends periodic health check emails using **msmtp** to verify that your mail transport agent is operational. It deploys a simple script and hooks it into a systemd service and timer, with failure notifications sent via Telegram. - -## Overview - -Optimized for Archlinux, this role creates the required directory structure, installs and configures the mon-bot-check script, and integrates with the **alert-telegram** role. It uses the **gen-timer** role to schedule regular checks based on your customizable `OnCalendar` setting. - -## Purpose - -The **mon-bot-msmtp** role ensures that your mail transport system stays available by sending a test email at defined intervals. If the email fails, a Telegram alert is triggered, allowing you to detect and address issues before they impact users. - -## Features - -- **Directory & Script Deployment:** Sets up `mon-bot-msmtp/` and deploys a templated Bash script to send test emails via msmtp. -- **Systemd Service & Timer:** Provides `.service` and `.timer` units to run the check and schedule it automatically. -- **Failure Notifications:** Leverages **alert-telegram** to push alerts when the script exits with an error. -- **Configurable Schedule:** Define your desired check frequency using the `on_calendar_health_msmtp` variable. -- **Email Destination:** Specify the recipient via the `users.administrator.email` variable. \ No newline at end of file diff --git a/roles/mon-bot-msmtp/handlers/main.yml b/roles/mon-bot-msmtp/handlers/main.yml deleted file mode 100644 index 6817c7d1..00000000 --- a/roles/mon-bot-msmtp/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: reload mon-bot-msmtp.cymais.service - systemd: - name: mon-bot-msmtp.cymais.service - enabled: yes - daemon_reload: yes \ No newline at end of file diff --git a/roles/mon-bot-msmtp/tasks/main.yml b/roles/mon-bot-msmtp/tasks/main.yml deleted file mode 100644 index ff0d1631..00000000 --- a/roles/mon-bot-msmtp/tasks/main.yml +++ /dev/null @@ -1,27 +0,0 @@ -- name: "create {{ health_msmtp_folder }}" - file: - path: "{{ health_msmtp_folder }}" - state: directory - mode: 0755 - -- name: create mon-bot-msmtp.sh - template: - src: mon-bot-msmtp.sh.j2 - dest: "{{ health_msmtp_folder }}mon-bot-msmtp.sh" - mode: '0755' - -- name: create mon-bot-msmtp.cymais.service - template: - src: mon-bot-msmtp.service.j2 - dest: /etc/systemd/system/mon-bot-msmtp.cymais.service - notify: reload mon-bot-msmtp.cymais.service - -- name: "set 'service_name' to '{{ role_name }}'" - set_fact: - service_name: "{{ role_name }}" - -- name: include role for gen-timer for {{ service_name }} - include_role: - name: gen-timer - vars: - on_calendar: "{{ on_calendar_health_msmtp }}" \ No newline at end of file diff --git a/roles/mon-bot-msmtp/templates/mon-bot-msmtp.service.j2 b/roles/mon-bot-msmtp/templates/mon-bot-msmtp.service.j2 deleted file mode 100644 index 2f5ba8d4..00000000 --- a/roles/mon-bot-msmtp/templates/mon-bot-msmtp.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=Check msmtp liveliness -OnFailure=alert-telegram.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/bin/bash {{ health_msmtp_folder }}mon-bot-msmtp.sh diff --git a/roles/mon-bot-msmtp/vars/main.yml b/roles/mon-bot-msmtp/vars/main.yml deleted file mode 100644 index 992eb5fc..00000000 --- a/roles/mon-bot-msmtp/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -health_msmtp_folder: '{{ path_administrator_scripts }}mon-bot-msmtp/' -application_id: bot-msmtp diff --git a/roles/mon-bot-webserver/handlers/main.yml b/roles/mon-bot-webserver/handlers/main.yml deleted file mode 100644 index 266207cc..00000000 --- a/roles/mon-bot-webserver/handlers/main.yml +++ /dev/null @@ -1,5 +0,0 @@ -- name: "reload mon-bot-webserver.cymais.service" - systemd: - name: mon-bot-webserver.cymais.service - enabled: yes - daemon_reload: yes diff --git a/roles/mon-bot-webserver/templates/mon-bot-webserver.service.j2 b/roles/mon-bot-webserver/templates/mon-bot-webserver.service.j2 deleted file mode 100644 index 0c115d6e..00000000 --- a/roles/mon-bot-webserver/templates/mon-bot-webserver.service.j2 +++ /dev/null @@ -1,7 +0,0 @@ -[Unit] -Description=Check nginx configuration status -OnFailure=alert-compose.cymais@%n.service - -[Service] -Type=oneshot -ExecStart=/usr/bin/python3 {{ health_nginx_folder }}mon-bot-webserver.py diff --git a/roles/mon-bot-webserver/vars/main.yml b/roles/mon-bot-webserver/vars/main.yml deleted file mode 100644 index bff79253..00000000 --- a/roles/mon-bot-webserver/vars/main.yml +++ /dev/null @@ -1,2 +0,0 @@ -health_nginx_folder: '{{ path_administrator_scripts }}mon-bot-webserver/' -application_id: bot-webserver diff --git a/roles/srv-proxy-6-6-tls-deploy/README.md b/roles/srv-proxy-6-6-tls-deploy/README.md index e9cb7018..659a8020 100644 --- a/roles/srv-proxy-6-6-tls-deploy/README.md +++ b/roles/srv-proxy-6-6-tls-deploy/README.md @@ -13,7 +13,7 @@ This Ansible role simplifies the deployment of **Let's Encrypt certificates** in - Automatically **reloads or restarts Nginx services** when certificates are updated. - **Configures and manages a `systemd` service** for automated certificate deployment. - **Includes a `systemd` timer** for scheduled renewals. -- **Handles dependent services** like `alert-compose`. +- **Handles dependent services** like `sys-alm-compose`. --- @@ -29,7 +29,7 @@ This Ansible role simplifies the deployment of **Let's Encrypt certificates** in 3. **Configure `systemd` Service** - Deploys a `systemd` service file for the deployment process. -4. **Include `gen-timer` Role** +4. **Include `sys-timer` Role** - Schedules automatic certificate deployment using a `systemd` timer. ### **2ļøāƒ£ Handlers** diff --git a/roles/srv-proxy-6-6-tls-deploy/meta/main.yml b/roles/srv-proxy-6-6-tls-deploy/meta/main.yml index 742d391c..fb95cd31 100644 --- a/roles/srv-proxy-6-6-tls-deploy/meta/main.yml +++ b/roles/srv-proxy-6-6-tls-deploy/meta/main.yml @@ -21,5 +21,5 @@ galaxy_info: - name: Any versions: [ all ] dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/srv-proxy-6-6-tls-deploy/tasks/main.yml b/roles/srv-proxy-6-6-tls-deploy/tasks/main.yml index ace50339..978b6973 100644 --- a/roles/srv-proxy-6-6-tls-deploy/tasks/main.yml +++ b/roles/srv-proxy-6-6-tls-deploy/tasks/main.yml @@ -23,9 +23,9 @@ dest: "/etc/systemd/system/srv-proxy-6-6-tls-deploy.{{application_id}}.cymais.service" notify: restart srv-proxy-6-6-tls-deploy.cymais.service -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_deploy_certificates}}" service_name: "srv-proxy-6-6-tls-deploy.{{application_id}}" diff --git a/roles/srv-proxy-6-6-tls-deploy/templates/srv-proxy-6-6-tls-deploy.service.j2 b/roles/srv-proxy-6-6-tls-deploy/templates/srv-proxy-6-6-tls-deploy.service.j2 index 79187ea7..1f3a6cd3 100644 --- a/roles/srv-proxy-6-6-tls-deploy/templates/srv-proxy-6-6-tls-deploy.service.j2 +++ b/roles/srv-proxy-6-6-tls-deploy/templates/srv-proxy-6-6-tls-deploy.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Let's Encrypt deploy to {{docker_compose.directories.instance}} -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/srv-web-6-6-tls-renew/README.md b/roles/srv-web-6-6-tls-renew/README.md index 2daa2c04..18096b2c 100644 --- a/roles/srv-web-6-6-tls-renew/README.md +++ b/roles/srv-web-6-6-tls-renew/README.md @@ -6,12 +6,12 @@ This role automates the setup of an automatic [Let's Encrypt](https://letsencryp ## šŸ“– Overview -Optimized for Archlinux systems, this role installs the `certbot-nginx` package, configures a dedicated `systemd` service for certificate renewal, and integrates with a `gen-timer` to schedule periodic renewals. After a renewal, Nginx is reloaded to apply the updated certificates immediately. +Optimized for Archlinux systems, this role installs the `certbot-nginx` package, configures a dedicated `systemd` service for certificate renewal, and integrates with a `sys-timer` to schedule periodic renewals. After a renewal, Nginx is reloaded to apply the updated certificates immediately. ### Key Features -- **Automatic Renewal:** Schedules unattended certificate renewals using gen-timers. +- **Automatic Renewal:** Schedules unattended certificate renewals using sys-timers. - **Seamless Nginx Reload:** Reloads the Nginx service automatically after successful renewals. -- **Systemd Integration:** Manages renewal operations reliably with `systemd` and `alert-compose`. +- **Systemd Integration:** Manages renewal operations reliably with `systemd` and `sys-alm-compose`. - **Quiet and Safe Operation:** Uses `--quiet` and `--agree-tos` flags to ensure non-interactive renewals. ## šŸŽÆ Purpose @@ -22,8 +22,8 @@ The Nginx Certbot Automation role ensures that Let's Encrypt SSL/TLS certificate - **Certbot-Nginx Package Installation:** Installs required certbot plugins for Nginx. - **Custom Systemd Service:** Configures a lightweight, dedicated renewal service. -- **Timer Setup:** Uses gen-timer to run certbot renewals periodically. -- **Failure Notification:** Integrated with `alert-compose` for alerting on failures. +- **Timer Setup:** Uses sys-timer to run certbot renewals periodically. +- **Failure Notification:** Integrated with `sys-alm-compose` for alerting on failures. ## šŸ”— Learn More diff --git a/roles/srv-web-6-6-tls-renew/meta/main.yml b/roles/srv-web-6-6-tls-renew/meta/main.yml index 71a3c1ea..684097aa 100644 --- a/roles/srv-web-6-6-tls-renew/meta/main.yml +++ b/roles/srv-web-6-6-tls-renew/meta/main.yml @@ -29,5 +29,5 @@ galaxy_info: dependencies: - gen-certbot - srv-web-7-4-core - - alert-compose - - cln-certs + - sys-alm-compose + - sys-cln-certs diff --git a/roles/srv-web-6-6-tls-renew/tasks/main.yml b/roles/srv-web-6-6-tls-renew/tasks/main.yml index a04c6c57..452e824c 100644 --- a/roles/srv-web-6-6-tls-renew/tasks/main.yml +++ b/roles/srv-web-6-6-tls-renew/tasks/main.yml @@ -17,9 +17,9 @@ service_name: "{{ role_name }}" when: run_once_nginx_certbot is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_renew_lets_encrypt_certificates}}" persistent: "true" diff --git a/roles/srv-web-6-6-tls-renew/templates/srv-web-6-6-tls-renew.service.j2 b/roles/srv-web-6-6-tls-renew/templates/srv-web-6-6-tls-renew.service.j2 index 62fdcb6e..4f68fef6 100644 --- a/roles/srv-web-6-6-tls-renew/templates/srv-web-6-6-tls-renew.service.j2 +++ b/roles/srv-web-6-6-tls-renew/templates/srv-web-6-6-tls-renew.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Let's Encrypt renewal -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/srv-web-7-4-core/meta/main.yml b/roles/srv-web-7-4-core/meta/main.yml index a7c04ab0..51d2f995 100644 --- a/roles/srv-web-7-4-core/meta/main.yml +++ b/roles/srv-web-7-4-core/meta/main.yml @@ -20,5 +20,5 @@ galaxy_info: issue_tracker_url: "https://github.com/kevinveenbirkenbach/cymais/issues" documentation: "https://github.com/kevinveenbirkenbach/cymais/roles/srv-web-7-4-core" dependencies: - - mon-bot-webserver - - mon-bot-csp \ No newline at end of file + - sys-hlth-webserver + - sys-hlth-csp \ No newline at end of file diff --git a/roles/srv-web-7-6-https/README.md b/roles/srv-web-7-6-https/README.md index 6b5ea0e7..f28bf531 100644 --- a/roles/srv-web-7-6-https/README.md +++ b/roles/srv-web-7-6-https/README.md @@ -16,7 +16,7 @@ This role is built on top of your existing `srv-web-7-4-core` role, and it autom When you apply **srv-web-7-6-https**, it will: 1. **Include** the `srv-web-7-4-core` role to install and configure Nginx. -2. **Clean up** any stale vHost files under `cln-domains`. +2. **Clean up** any stale vHost files under `sys-cln-domains`. 3. **Deploy** the Let’s Encrypt challenge-and-redirect snippet from `srv-web-7-7-letsencrypt`. 4. **Reload** Nginx automatically when any template changes. diff --git a/roles/srv-web-7-6-https/meta/main.yml b/roles/srv-web-7-6-https/meta/main.yml index ab1f924f..01d91a0e 100644 --- a/roles/srv-web-7-6-https/meta/main.yml +++ b/roles/srv-web-7-6-https/meta/main.yml @@ -25,5 +25,5 @@ galaxy_info: dependencies: - srv-web-7-4-core - - cln-domains + - sys-cln-domains - srv-web-7-7-letsencrypt \ No newline at end of file diff --git a/roles/srv-web-7-7-inj-css/templates/global.css.j2 b/roles/srv-web-7-7-inj-css/templates/global.css.j2 index db732c0c..d0ea8f72 100644 --- a/roles/srv-web-7-7-inj-css/templates/global.css.j2 +++ b/roles/srv-web-7-7-inj-css/templates/global.css.j2 @@ -1198,7 +1198,7 @@ input.ng-empty::placeholder,.ng-empty::placeholder { border-color: var(--color-01-67) } -.alert-info { - --bs-alert-color: var(--color-03-14); - --bs-alert-bg: var(--color-01-86); +.sys-alm-info { + --bs-sys-alm-color: var(--color-03-14); + --bs-sys-alm-bg: var(--color-01-86); } \ No newline at end of file diff --git a/roles/bkp-data-to-usb/README.md b/roles/svc-sys-bkp-data-to-usb/README.md similarity index 100% rename from roles/bkp-data-to-usb/README.md rename to roles/svc-sys-bkp-data-to-usb/README.md diff --git a/roles/bkp-data-to-usb/files/bkp-data-to-usb.python b/roles/svc-sys-bkp-data-to-usb/files/svc-sys-bkp-data-to-usb.python similarity index 98% rename from roles/bkp-data-to-usb/files/bkp-data-to-usb.python rename to roles/svc-sys-bkp-data-to-usb/files/svc-sys-bkp-data-to-usb.python index 4cb0a069..15551a8f 100644 --- a/roles/bkp-data-to-usb/files/bkp-data-to-usb.python +++ b/roles/svc-sys-bkp-data-to-usb/files/svc-sys-bkp-data-to-usb.python @@ -21,7 +21,7 @@ def main(): machine_id = subprocess.run(["sha256sum", "/etc/machine-id"], capture_output=True, text=True).stdout.strip()[:64] print(f"machine id: {machine_id}") - versions_path = os.path.join(backup_to_usb_destination_path, f"{machine_id}/bkp-data-to-usb/") + versions_path = os.path.join(backup_to_usb_destination_path, f"{machine_id}/svc-sys-bkp-data-to-usb/") print(f"versions path: {versions_path}") if not os.path.isdir(versions_path): diff --git a/roles/svc-sys-bkp-data-to-usb/handlers/main.yml b/roles/svc-sys-bkp-data-to-usb/handlers/main.yml new file mode 100644 index 00000000..139abb19 --- /dev/null +++ b/roles/svc-sys-bkp-data-to-usb/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload svc-sys-bkp-data-to-usb.cymais.service" + systemd: + name: svc-sys-bkp-data-to-usb.cymais.service + state: reloaded + daemon_reload: yes diff --git a/roles/bkp-data-to-usb/meta/main.yml b/roles/svc-sys-bkp-data-to-usb/meta/main.yml similarity index 94% rename from roles/bkp-data-to-usb/meta/main.yml rename to roles/svc-sys-bkp-data-to-usb/meta/main.yml index e4fa7ef4..28ee9781 100644 --- a/roles/bkp-data-to-usb/meta/main.yml +++ b/roles/svc-sys-bkp-data-to-usb/meta/main.yml @@ -23,5 +23,5 @@ galaxy_info: issue_tracker_url: https://s.veen.world/cymaisissues documentation: https://s.veen.world/cymais dependencies: - - cln-backups-service - - maint-lock + - sys-cln-bkps-service + - sys-lock diff --git a/roles/bkp-data-to-usb/tasks/main.yml b/roles/svc-sys-bkp-data-to-usb/tasks/main.yml similarity index 56% rename from roles/bkp-data-to-usb/tasks/main.yml rename to roles/svc-sys-bkp-data-to-usb/tasks/main.yml index b520b21c..5bfcd2b0 100644 --- a/roles/bkp-data-to-usb/tasks/main.yml +++ b/roles/svc-sys-bkp-data-to-usb/tasks/main.yml @@ -1,6 +1,6 @@ - name: Copy backup script to the scripts directory copy: - src: bkp-data-to-usb.python + src: svc-sys-bkp-data-to-usb.python dest: "{{ backup_to_usb_script_path }}" owner: root group: root @@ -8,9 +8,9 @@ - name: Copy systemd service to systemd directory template: - src: bkp-data-to-usb.service.j2 - dest: /etc/systemd/system/bkp-data-to-usb.cymais.service + src: svc-sys-bkp-data-to-usb.service.j2 + dest: /etc/systemd/system/svc-sys-bkp-data-to-usb.cymais.service owner: root group: root mode: '0644' - notify: reload bkp-data-to-usb.cymais.service \ No newline at end of file + notify: reload svc-sys-bkp-data-to-usb.cymais.service \ No newline at end of file diff --git a/roles/bkp-data-to-usb/templates/bkp-data-to-usb.service.j2 b/roles/svc-sys-bkp-data-to-usb/templates/svc-sys-bkp-data-to-usb.service.j2 similarity index 72% rename from roles/bkp-data-to-usb/templates/bkp-data-to-usb.service.j2 rename to roles/svc-sys-bkp-data-to-usb/templates/svc-sys-bkp-data-to-usb.service.j2 index f6a5b76a..c368b175 100644 --- a/roles/bkp-data-to-usb/templates/bkp-data-to-usb.service.j2 +++ b/roles/svc-sys-bkp-data-to-usb/templates/svc-sys-bkp-data-to-usb.service.j2 @@ -1,12 +1,12 @@ [Unit] Description=Backup to USB when mounted to {{ backup_to_usb_mount }} Wants={{systemctl_mount_service_name}} -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot ExecStart=/bin/python {{ backup_to_usb_script_path }} {{backup_to_usb_source}} {{backup_to_usb_destination}} -ExecStartPost=/bin/systemctl start cln-backups.cymais.service +ExecStartPost=/bin/systemctl start sys-cln-backups.cymais.service [Install] WantedBy=multi-user.target \ No newline at end of file diff --git a/roles/bkp-data-to-usb/vars/main.yml b/roles/svc-sys-bkp-data-to-usb/vars/main.yml similarity index 68% rename from roles/bkp-data-to-usb/vars/main.yml rename to roles/svc-sys-bkp-data-to-usb/vars/main.yml index 75cad993..6a4a4533 100644 --- a/roles/bkp-data-to-usb/vars/main.yml +++ b/roles/svc-sys-bkp-data-to-usb/vars/main.yml @@ -1,6 +1,6 @@ -backup_to_usb_script_path: /usr/local/sbin/bkp-data-to-usb.python +backup_to_usb_script_path: /usr/local/sbin/svc-sys-bkp-data-to-usb.python backup_to_usb_destination: '{{backup_to_usb_mount}}{{backup_to_usb_destination_subdirectory}}' backups_folder_path: '{{backup_to_usb_destination}}' systemctl_mount_service_name: '{{ backup_to_usb_mount | trim(''/'') | replace(''/'', ''-'') }}.mount' -application_id: data-to-usb +application_id: svc-sys-bkp-data-to-usb diff --git a/roles/bkp-remote-to-local/Administration.md b/roles/svc-sys-bkp-rmt-2-loc/Administration.md similarity index 57% rename from roles/bkp-remote-to-local/Administration.md rename to roles/svc-sys-bkp-rmt-2-loc/Administration.md index 8382a176..b42e49d4 100644 --- a/roles/bkp-remote-to-local/Administration.md +++ b/roles/svc-sys-bkp-rmt-2-loc/Administration.md @@ -9,17 +9,17 @@ To track what the service is doing, execute one of the following commands: #### Using systemctl ```bash -watch -n2 "systemctl status bkp-remote-to-local.cymais.service" +watch -n2 "systemctl status sys-bkp-remote-to-local.cymais.service" ``` #### Using journalctl ```bash -journalctl -fu bkp-remote-to-local.cymais.service +journalctl -fu sys-bkp-remote-to-local.cymais.service ``` ### Viewing History ```bash -sudo journalctl -u bkp-remote-to-local.cymais.service +sudo journalctl -u sys-bkp-remote-to-local.cymais.service ``` \ No newline at end of file diff --git a/roles/bkp-remote-to-local/README.md b/roles/svc-sys-bkp-rmt-2-loc/README.md similarity index 91% rename from roles/bkp-remote-to-local/README.md rename to roles/svc-sys-bkp-rmt-2-loc/README.md index 839e8f2b..b615ff7d 100644 --- a/roles/bkp-remote-to-local/README.md +++ b/roles/svc-sys-bkp-rmt-2-loc/README.md @@ -17,7 +17,7 @@ Backup Remote to Local is a robust solution for retrieving backup data from remo - **Remote Backup Retrieval:** Pulls backups from a remote server using secure SSH connections. - **Incremental Backup with rsync:** Uses rsync with options for archive, backup, and hard linking to efficiently manage changes. - **Retry Logic:** Implements a retry mechanism to handle transient network issues or remote errors. -- **Integration with Other Roles:** Works alongside roles like bkp-directory-validator, cln-failed-docker-backups, gen-timer, bkp-provider, and maint-lock. +- **Integration with Other Roles:** Works alongside roles like sys-bkp-directory-validator, sys-cln-faild-bkps, sys-timer, sys-bkp-provider, and sys-lock. - **Administrative Debugging:** Detailed debug instructions and administrative tasks are provided in a separate file. ## Other Resources diff --git a/roles/bkp-remote-to-local/files/bkp-remote-to-local.sh b/roles/svc-sys-bkp-rmt-2-loc/files/sys-bkp-remote-to-local.sh similarity index 100% rename from roles/bkp-remote-to-local/files/bkp-remote-to-local.sh rename to roles/svc-sys-bkp-rmt-2-loc/files/sys-bkp-remote-to-local.sh diff --git a/roles/svc-sys-bkp-rmt-2-loc/handlers/main.yml b/roles/svc-sys-bkp-rmt-2-loc/handlers/main.yml new file mode 100644 index 00000000..fd42ea1e --- /dev/null +++ b/roles/svc-sys-bkp-rmt-2-loc/handlers/main.yml @@ -0,0 +1,4 @@ +- name: "reload svc-sys-bkp-rmt-2-loc service" + systemd: + name: svc-sys-bkp-rmt-2-loc.cymais.service + daemon_reload: yes diff --git a/roles/bkp-remote-to-local/meta/main.yml b/roles/svc-sys-bkp-rmt-2-loc/meta/main.yml similarity index 89% rename from roles/bkp-remote-to-local/meta/main.yml rename to roles/svc-sys-bkp-rmt-2-loc/meta/main.yml index cf73ef3c..ae91e3f5 100644 --- a/roles/bkp-remote-to-local/meta/main.yml +++ b/roles/svc-sys-bkp-rmt-2-loc/meta/main.yml @@ -26,9 +26,9 @@ galaxy_info: documentation: "https://s.veen.world/cymais" dependencies: - gen-git - - alert-compose - - cln-backups-timer - - cln-failed-docker-backups - - maint-lock + - sys-alm-compose + - sys-cln-bkps-timer + - sys-cln-faild-bkps + - sys-lock - user-root - - core-daemon + - sys-rst-daemon diff --git a/roles/bkp-remote-to-local/tasks/main.yml b/roles/svc-sys-bkp-rmt-2-loc/tasks/main.yml similarity index 56% rename from roles/bkp-remote-to-local/tasks/main.yml rename to roles/svc-sys-bkp-rmt-2-loc/tasks/main.yml index 568ff34a..24c907aa 100644 --- a/roles/bkp-remote-to-local/tasks/main.yml +++ b/roles/svc-sys-bkp-rmt-2-loc/tasks/main.yml @@ -4,17 +4,17 @@ state: directory mode: 0755 -- name: create bkp-remote-to-local.sh +- name: create svc-sys-bkp-rmt-2-loc.sh copy: - src: bkp-remote-to-local.sh - dest: "{{docker_backup_remote_to_local_folder}}bkp-remote-to-local.sh" + src: svc-sys-bkp-rmt-2-loc.sh + dest: "{{docker_backup_remote_to_local_folder}}svc-sys-bkp-rmt-2-loc.sh" mode: 0755 -- name: create bkp-remote-to-local.cymais.service +- name: create svc-sys-bkp-rmt-2-loc.cymais.service template: - src: bkp-remote-to-local.service.j2 - dest: /etc/systemd/system/bkp-remote-to-local.cymais.service - notify: reload bkp-remote-to-local service + src: svc-sys-bkp-rmt-2-loc.service.j2 + dest: /etc/systemd/system/svc-sys-bkp-rmt-2-loc.cymais.service + notify: reload svc-sys-bkp-rmt-2-loc service - name: create backups-remote-to-local.sh template: @@ -26,9 +26,9 @@ set_fact: service_name: "{{ role_name }}" -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_backup_remote_to_local}}" diff --git a/roles/bkp-remote-to-local/templates/backups-remote-to-local.sh.j2 b/roles/svc-sys-bkp-rmt-2-loc/templates/backups-remote-to-local.sh.j2 similarity index 61% rename from roles/bkp-remote-to-local/templates/backups-remote-to-local.sh.j2 rename to roles/svc-sys-bkp-rmt-2-loc/templates/backups-remote-to-local.sh.j2 index 0aeb4665..dc71ba5e 100644 --- a/roles/bkp-remote-to-local/templates/backups-remote-to-local.sh.j2 +++ b/roles/svc-sys-bkp-rmt-2-loc/templates/backups-remote-to-local.sh.j2 @@ -3,6 +3,6 @@ hosts="{{ pull_remote_backups | join(' ') }}"; errors=0 for host in $hosts; do - bash {{ docker_backup_remote_to_local_folder }}bkp-remote-to-local.sh $host || ((errors+=1)); + bash {{ docker_backup_remote_to_local_folder }}svc-sys-bkp-rmt-2-loc.sh $host || ((errors+=1)); done; exit $errors; diff --git a/roles/bkp-remote-to-local/templates/bkp-remote-to-local.service.j2 b/roles/svc-sys-bkp-rmt-2-loc/templates/sys-bkp-remote-to-local.service.j2 similarity index 83% rename from roles/bkp-remote-to-local/templates/bkp-remote-to-local.service.j2 rename to roles/svc-sys-bkp-rmt-2-loc/templates/sys-bkp-remote-to-local.service.j2 index cbe789b8..af799e6b 100644 --- a/roles/bkp-remote-to-local/templates/bkp-remote-to-local.service.j2 +++ b/roles/svc-sys-bkp-rmt-2-loc/templates/sys-bkp-remote-to-local.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=pull remote backups -OnFailure=alert-compose.cymais@%n.service cln-failed-docker-backups.cymais.service +OnFailure=sys-alm-compose.cymais@%n.service sys-cln-faild-bkps.cymais.service [Service] Type=oneshot diff --git a/roles/svc-sys-bkp-rmt-2-loc/vars/main.yml b/roles/svc-sys-bkp-rmt-2-loc/vars/main.yml new file mode 100644 index 00000000..8d662b43 --- /dev/null +++ b/roles/svc-sys-bkp-rmt-2-loc/vars/main.yml @@ -0,0 +1,2 @@ +docker_backup_remote_to_local_folder: '{{path_administrator_scripts}}svc-sys-bkp-rmt-2-loc/' +application_id: svc-sys-bkp-rmt-2-loc diff --git a/roles/alert-compose/README.md b/roles/sys-alm-compose/README.md similarity index 78% rename from roles/alert-compose/README.md rename to roles/sys-alm-compose/README.md index ff183c68..4b468b9d 100644 --- a/roles/alert-compose/README.md +++ b/roles/sys-alm-compose/README.md @@ -2,7 +2,7 @@ ## Description -This role installs a systemd service that sends notifications via both [alert-telegram](../alert-telegram/README.md) and [alert-email](../alert-email/README.md) when any service fails. +This role installs a systemd service that sends notifications via both [sys-alm-telegram](../sys-alm-telegram/README.md) and [sys-alm-email](../sys-alm-email/README.md) when any service fails. ## Overview @@ -15,6 +15,6 @@ The primary purpose of this role is to provide a centralized mechanism for servi ## Features - **Unified Notification Service:** Installs a systemd service that triggers both Telegram and Email alerts. -- **Dependency Integration:** Works seamlessly with the [alert-telegram](../alert-telegram/README.md) and [alert-email](../alert-email/README.md) roles. +- **Dependency Integration:** Works seamlessly with the [sys-alm-telegram](../sys-alm-telegram/README.md) and [sys-alm-email](../sys-alm-email/README.md) roles. - **Automated Service Management:** Automatically restarts the notifier service upon configuration changes. - **Centralized Alerting:** Provides a unified approach to monitor and notify about service failures. \ No newline at end of file diff --git a/roles/alert-compose/handlers/main.yml b/roles/sys-alm-compose/handlers/main.yml similarity index 75% rename from roles/alert-compose/handlers/main.yml rename to roles/sys-alm-compose/handlers/main.yml index b04ffdd7..9793e62d 100644 --- a/roles/alert-compose/handlers/main.yml +++ b/roles/sys-alm-compose/handlers/main.yml @@ -1,6 +1,6 @@ -- name: "restart alert-compose service" +- name: "restart sys-alm-compose service" systemd: - name: alert-compose.cymais.service + name: sys-alm-compose.cymais.service daemon_reload: yes when: run_once_systemd_notifier_service is not defined diff --git a/roles/alert-compose/meta/main.yml b/roles/sys-alm-compose/meta/main.yml similarity index 94% rename from roles/alert-compose/meta/main.yml rename to roles/sys-alm-compose/meta/main.yml index 22cf513d..3cc155ea 100644 --- a/roles/alert-compose/meta/main.yml +++ b/roles/sys-alm-compose/meta/main.yml @@ -23,5 +23,5 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - alert-telegram - - alert-email + - sys-alm-telegram + - sys-alm-email diff --git a/roles/alert-compose/tasks/main.yml b/roles/sys-alm-compose/tasks/main.yml similarity index 54% rename from roles/alert-compose/tasks/main.yml rename to roles/sys-alm-compose/tasks/main.yml index 30967f55..7c0ed9c8 100644 --- a/roles/alert-compose/tasks/main.yml +++ b/roles/sys-alm-compose/tasks/main.yml @@ -1,9 +1,9 @@ --- -- name: configure alert-compose.cymais@.service +- name: configure sys-alm-compose.cymais@.service template: - src: alert-compose@.service.j2 - dest: "/etc/systemd/system/alert-compose.cymais@.service" - notify: "restart alert-compose service" + src: sys-alm-compose@.service.j2 + dest: "/etc/systemd/system/sys-alm-compose.cymais@.service" + notify: "restart sys-alm-compose service" when: run_once_systemd_notifier_service is not defined - name: run the systemd_notifier_service tasks once diff --git a/roles/sys-alm-compose/templates/sys-alm-compose@.service.j2 b/roles/sys-alm-compose/templates/sys-alm-compose@.service.j2 new file mode 100644 index 00000000..b910e2c7 --- /dev/null +++ b/roles/sys-alm-compose/templates/sys-alm-compose@.service.j2 @@ -0,0 +1,8 @@ +[Unit] +Description=Notifier for %i + +[Service] +Type=oneshot +ExecStart=/usr/bin/systemctl start sys-alm-telegram.cymais@%i.service sys-alm-email.cymais@%i.service +User=root +Group=systemd-journal diff --git a/roles/alert-email/README.md b/roles/sys-alm-email/README.md similarity index 71% rename from roles/alert-email/README.md rename to roles/sys-alm-email/README.md index 1787af37..3f9bec62 100644 --- a/roles/alert-email/README.md +++ b/roles/sys-alm-email/README.md @@ -2,11 +2,11 @@ ## Description -This role installs and configures the necessary components for sending email notifications via systemd when a service fails. It sets up the `alert-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 `sys-alm-email` service and configures email parameters and templates using msmtp. ## Overview -Optimized for secure and reliable service failure notifications, this role is an integral part of the overall `alert-compose` suite. It ensures that, upon failure of a critical service, an email alert is sent automatically to enable prompt troubleshooting. +Optimized for secure and reliable service failure notifications, this role is an integral part of the overall `sys-alm-compose` suite. It ensures that, upon failure of a critical service, an email alert is sent automatically to enable prompt troubleshooting. ## Purpose @@ -17,7 +17,7 @@ The primary purpose of this role is to provide a comprehensive solution for auto - **Service Installation & Configuration:** Installs msmtp and configures the email sending service. - **Customizable Templates:** Supports tailoring email templates for service failure notifications. - **Secure Notifications:** Integrates with systemd to trigger email alerts when services fail. -- **Suite Integration:** Part of the `alert-compose` suite, offering a unified approach to service failure notifications. +- **Suite Integration:** Part of the `sys-alm-compose` suite, offering a unified approach to service failure notifications. ## Other Resources diff --git a/roles/sys-alm-email/handlers/main.yml b/roles/sys-alm-email/handlers/main.yml new file mode 100644 index 00000000..a8ce554c --- /dev/null +++ b/roles/sys-alm-email/handlers/main.yml @@ -0,0 +1,4 @@ +- name: "restart sys-alm-email service" + systemd: + name: sys-alm-email.cymais.service + daemon_reload: yes diff --git a/roles/alert-email/meta/main.yml b/roles/sys-alm-email/meta/main.yml similarity index 81% rename from roles/alert-email/meta/main.yml rename to roles/sys-alm-email/meta/main.yml index b33d669f..740725ff 100644 --- a/roles/alert-email/meta/main.yml +++ b/roles/sys-alm-email/meta/main.yml @@ -1,7 +1,7 @@ --- galaxy_info: author: "Kevin Veen-Birkenbach" - description: "Installs and configures components for sending email notifications. This role is part of the alert-compose suite, providing automated alerts when services fail." + description: "Installs and configures components for sending email notifications. This role is part of the sys-alm-compose suite, providing automated alerts when services fail." license: "CyMaIS NonCommercial License (CNCL)" license_url: "https://s.veen.world/cncl" company: | @@ -23,5 +23,5 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - gen-msmtp - - core-daemon + - sys-svc-msmtp + - sys-rst-daemon diff --git a/roles/alert-email/tasks/main.yml b/roles/sys-alm-email/tasks/main.yml similarity index 61% rename from roles/alert-email/tasks/main.yml rename to roles/sys-alm-email/tasks/main.yml index 7f5ebe3c..23ac94e5 100644 --- a/roles/alert-email/tasks/main.yml +++ b/roles/sys-alm-email/tasks/main.yml @@ -5,17 +5,17 @@ mode: 0755 when: run_once_systemd_notifier_email is not defined -- name: configure alert-email.sh +- name: configure sys-alm-email.sh template: - src: alert-email.sh.j2 - dest: "{{systemd_notifier_email_folder}}alert-email.sh" + src: sys-alm-email.sh.j2 + dest: "{{systemd_notifier_email_folder}}sys-alm-email.sh" when: run_once_systemd_notifier_email is not defined -- name: configure alert-email.cymais.service +- name: configure sys-alm-email.cymais.service template: - src: alert-email@.service.j2 - dest: /etc/systemd/system/alert-email.cymais@.service - notify: restart alert-email service + src: sys-alm-email@.service.j2 + dest: /etc/systemd/system/sys-alm-email.cymais@.service + notify: restart sys-alm-email service when: run_once_systemd_notifier_email is not defined - name: run the systemd_notifier_email tasks once diff --git a/roles/alert-email/templates/alert-email.sh.j2 b/roles/sys-alm-email/templates/sys-alm-email.sh.j2 similarity index 100% rename from roles/alert-email/templates/alert-email.sh.j2 rename to roles/sys-alm-email/templates/sys-alm-email.sh.j2 diff --git a/roles/alert-email/templates/alert-email@.service.j2 b/roles/sys-alm-email/templates/sys-alm-email@.service.j2 similarity index 58% rename from roles/alert-email/templates/alert-email@.service.j2 rename to roles/sys-alm-email/templates/sys-alm-email@.service.j2 index 7199533f..54efb87c 100644 --- a/roles/alert-email/templates/alert-email@.service.j2 +++ b/roles/sys-alm-email/templates/sys-alm-email@.service.j2 @@ -3,6 +3,6 @@ Description=status email for %i to user [Service] Type=oneshot -ExecStart=/bin/bash {{systemd_notifier_email_folder}}alert-email.sh %i +ExecStart=/bin/bash {{systemd_notifier_email_folder}}sys-alm-email.sh %i User=root Group=systemd-journal diff --git a/roles/sys-alm-email/vars/main.yml b/roles/sys-alm-email/vars/main.yml new file mode 100644 index 00000000..40a29b02 --- /dev/null +++ b/roles/sys-alm-email/vars/main.yml @@ -0,0 +1 @@ +systemd_notifier_email_folder: '{{path_administrator_scripts}}sys-alm-email/' diff --git a/roles/alert-telegram/README.md b/roles/sys-alm-telegram/README.md similarity index 69% rename from roles/alert-telegram/README.md rename to roles/sys-alm-telegram/README.md index 6bdb3b20..92700077 100644 --- a/roles/alert-telegram/README.md +++ b/roles/sys-alm-telegram/README.md @@ -2,11 +2,11 @@ ## Description -This role installs and configures the necessary components for sending notifications via systemd when a service fails. It sets up the `alert-telegram` service and configures parameters and customizable templates for sending messages through [Telegram](https://telegram.org). +This role installs and configures the necessary components for sending notifications via systemd when a service fails. It sets up the `sys-alm-telegram` service and configures parameters and customizable templates for sending messages through [Telegram](https://telegram.org). ## Overview -Optimized for real-time alerts, this role is a key component of the overall [`alert-compose` suite](../). It ensures that, upon failure of a critical service, a Telegram message is automatically sent to notify administrators and enable prompt troubleshooting. +Optimized for real-time alerts, this role is a key component of the overall [`sys-alm-compose` suite](../). It ensures that, upon failure of a critical service, a Telegram message is automatically sent to notify administrators and enable prompt troubleshooting. ## Purpose @@ -17,7 +17,7 @@ The primary purpose of this role is to provide a robust solution for automated T - **Service Installation & Configuration:** Installs and configures necessary components (including the `curl` package). - **Customizable Templates:** Supports tailored Telegram message templates for service failure notifications. - **Secure Notifications:** Leverages systemd to trigger alerts automatically when services fail. -- **Suite Integration:** Part of the [`alert-compose` suite](../) which includes related roles such as [alert-email](../alert-email/README.md) and others. +- **Suite Integration:** Part of the [`sys-alm-compose` suite](../) which includes related roles such as [sys-alm-email](../sys-alm-email/README.md) and others. ## Other Resources diff --git a/roles/sys-alm-telegram/handlers/main.yml b/roles/sys-alm-telegram/handlers/main.yml new file mode 100644 index 00000000..54f453ad --- /dev/null +++ b/roles/sys-alm-telegram/handlers/main.yml @@ -0,0 +1,4 @@ +- name: "restart sys-alm-telegram service" + systemd: + name: sys-alm-telegram.cymais.service + daemon_reload: yes diff --git a/roles/alert-telegram/meta/main.yml b/roles/sys-alm-telegram/meta/main.yml similarity index 88% rename from roles/alert-telegram/meta/main.yml rename to roles/sys-alm-telegram/meta/main.yml index bffccf4f..e7e7365e 100644 --- a/roles/alert-telegram/meta/main.yml +++ b/roles/sys-alm-telegram/meta/main.yml @@ -1,7 +1,7 @@ --- galaxy_info: author: "Kevin Veen-Birkenbach" - description: "Installs and configures components for sending Telegram notifications through systemd. This role is part of the alert-compose suite, providing automated alerts when services fail." + description: "Installs and configures components for sending Telegram notifications through systemd. This role is part of the sys-alm-compose suite, providing automated alerts when services fail." license: "CyMaIS NonCommercial License (CNCL)" license_url: "https://s.veen.world/cncl" company: | @@ -23,4 +23,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - core-daemon + - sys-rst-daemon diff --git a/roles/alert-telegram/tasks/main.yml b/roles/sys-alm-telegram/tasks/main.yml similarity index 71% rename from roles/alert-telegram/tasks/main.yml rename to roles/sys-alm-telegram/tasks/main.yml index fee0facc..b8829c55 100644 --- a/roles/alert-telegram/tasks/main.yml +++ b/roles/sys-alm-telegram/tasks/main.yml @@ -11,17 +11,17 @@ mode: '0755' when: run_once_systemd_notifier_telegram is not defined -- name: configure alert-telegram.sh +- name: configure sys-alm-telegram.sh template: - src: alert-telegram.sh.j2 + src: sys-alm-telegram.sh.j2 dest: "{{ systemd_telegram_script }}" when: run_once_systemd_notifier_telegram is not defined -- name: configure alert-telegram.cymais.service +- name: configure sys-alm-telegram.cymais.service template: - src: alert-telegram@.service.j2 - dest: "/etc/systemd/system/alert-telegram.cymais@.service" - notify: "restart alert-telegram service" + src: sys-alm-telegram@.service.j2 + dest: "/etc/systemd/system/sys-alm-telegram.cymais@.service" + notify: "restart sys-alm-telegram service" when: run_once_systemd_notifier_telegram is not defined - name: run the systemd_notifier_telegram tasks once diff --git a/roles/alert-telegram/templates/alert-telegram.sh.j2 b/roles/sys-alm-telegram/templates/sys-alm-telegram.sh.j2 similarity index 100% rename from roles/alert-telegram/templates/alert-telegram.sh.j2 rename to roles/sys-alm-telegram/templates/sys-alm-telegram.sh.j2 diff --git a/roles/alert-telegram/templates/alert-telegram@.service.j2 b/roles/sys-alm-telegram/templates/sys-alm-telegram@.service.j2 similarity index 100% rename from roles/alert-telegram/templates/alert-telegram@.service.j2 rename to roles/sys-alm-telegram/templates/sys-alm-telegram@.service.j2 diff --git a/roles/sys-alm-telegram/vars/main.yml b/roles/sys-alm-telegram/vars/main.yml new file mode 100644 index 00000000..8d56f7cb --- /dev/null +++ b/roles/sys-alm-telegram/vars/main.yml @@ -0,0 +1,2 @@ +systemd_telegram_folder: /opt/ansible-roles/sys-alm-telegram/ +systemd_telegram_script: '{{systemd_telegram_folder}}sys-alm-telegram.sh' diff --git a/roles/bkp-directory-validator/README.md b/roles/sys-bkp-directory-validator/README.md similarity index 88% rename from roles/bkp-directory-validator/README.md rename to roles/sys-bkp-directory-validator/README.md index e3e4c0fb..3718b6ae 100644 --- a/roles/bkp-directory-validator/README.md +++ b/roles/sys-bkp-directory-validator/README.md @@ -2,7 +2,7 @@ ## Description -This Ansible role installs the [directory-validator](https://github.com/kevinveenbirkenbach/directory-validator.git). It is used by the bkp-docker-to-local and cln-failed-docker-backups roles to verify whether backups have been successfully created. +This Ansible role installs the [directory-validator](https://github.com/kevinveenbirkenbach/directory-validator.git). It is used by the sys-bkp-docker-to-local and sys-cln-faild-bkps roles to verify whether backups have been successfully created. ## Overview @@ -16,5 +16,5 @@ The primary purpose of this role is to validate backup directories. By fetching - **Git Repository Pull:** Automatically pulls the latest version of the directory-validator from Git. - **Idempotent Execution:** Ensures that the repository is fetched only once per playbook run. -- **Backup Verification:** Serves as a validation step for other bkp-related roles. +- **Backup Verification:** Serves as a validation step for other sys-bkp-related roles. - **Configurable Destination:** The target folder is customizable via the `backup_directory_validator_folder` variable. diff --git a/roles/bkp-directory-validator/meta/main.yml b/roles/sys-bkp-directory-validator/meta/main.yml similarity index 100% rename from roles/bkp-directory-validator/meta/main.yml rename to roles/sys-bkp-directory-validator/meta/main.yml diff --git a/roles/bkp-directory-validator/tasks/main.yml b/roles/sys-bkp-directory-validator/tasks/main.yml similarity index 100% rename from roles/bkp-directory-validator/tasks/main.yml rename to roles/sys-bkp-directory-validator/tasks/main.yml diff --git a/roles/bkp-docker-to-local/README.md b/roles/sys-bkp-docker-to-local/README.md similarity index 60% rename from roles/bkp-docker-to-local/README.md rename to roles/sys-bkp-docker-to-local/README.md index 13f8405d..85567460 100644 --- a/roles/bkp-docker-to-local/README.md +++ b/roles/sys-bkp-docker-to-local/README.md @@ -2,16 +2,16 @@ ## Description -This Ansible role automates the process of backing up Docker volumes to a local folder. It pulls the [bkp-docker-to-local repository](https://github.com/kevinveenbirkenbach/bkp-docker-to-local.git), installs required software, configures systemd services for both standard and "everything" backup modes, and seeds backup database entries as needed. +This Ansible role automates the process of backing up Docker volumes to a local folder. It pulls the [sys-bkp-docker-to-local repository](https://github.com/kevinveenbirkenbach/sys-bkp-docker-to-local.git), installs required software, configures systemd services for both standard and "everything" backup modes, and seeds backup database entries as needed. ## Overview Optimized for Archlinux, this role ensures that Docker volume backups are performed reliably with minimal manual intervention. It integrates with several dependent roles to verify backup success and manage related tasks, including: -- [bkp-directory-validator](../bkp-directory-validator/) – Validates backup directories. -- [cln-failed-docker-backups](../cln-failed-docker-backups/) – Cleans up unsuccessful backup attempts. -- [gen-timer](../gen-timer/) – Schedules recurring backup tasks. -- [bkp-provider](../bkp-provider/) – Manages backup sources. -- [maint-lock](../maint-lock/) – Ensures coordinated maintenance operations. +- [sys-bkp-directory-validator](../sys-bkp-directory-validator/) – Validates backup directories. +- [sys-cln-faild-bkps](../sys-cln-faild-bkps/) – Cleans up unsuccessful backup attempts. +- [sys-timer](../sys-timer/) – Schedules recurring backup tasks. +- [sys-bkp-provider](../sys-bkp-provider/) – Manages backup sources. +- [sys-lock](../sys-lock/) – Ensures coordinated maintenance operations. ## Purpose @@ -20,7 +20,7 @@ Backup Docker Volumes to Local is a comprehensive solution that leverages rsync ## Features - **Required Software Installation:** Installs necessary packages (e.g., lsof, python-pandas) via pacman. -- **Git Repository Pull:** Automatically pulls the latest version of the [bkp-docker-to-local repository](https://github.com/kevinveenbirkenbach/bkp-docker-to-local.git). +- **Git Repository Pull:** Automatically pulls the latest version of the [sys-bkp-docker-to-local repository](https://github.com/kevinveenbirkenbach/sys-bkp-docker-to-local.git). - **Systemd Service Configuration:** Deploys and reloads two systemd service templates to manage backup tasks. - **Database Seeding:** Includes tasks to seed and manage a backup database (`databases.csv`) for tracking backup details. - **Dependency Integration:** Works in conjunction with the dependent roles listed above to verify and manage backups. diff --git a/roles/sys-bkp-docker-to-local/handlers/main.yml b/roles/sys-bkp-docker-to-local/handlers/main.yml new file mode 100644 index 00000000..18990f45 --- /dev/null +++ b/roles/sys-bkp-docker-to-local/handlers/main.yml @@ -0,0 +1,9 @@ +- name: "reload sys-bkp-docker-to-local-everything.cymais.service" + systemd: + name: sys-bkp-docker-to-local-everything.cymais.service + daemon_reload: yes + +- name: "reload sys-bkp-docker-to-local.cymais.service" + systemd: + name: sys-bkp-docker-to-local.cymais.service + daemon_reload: yes \ No newline at end of file diff --git a/roles/bkp-docker-to-local/meta/main.yml b/roles/sys-bkp-docker-to-local/meta/main.yml similarity index 85% rename from roles/bkp-docker-to-local/meta/main.yml rename to roles/sys-bkp-docker-to-local/meta/main.yml index 65ce5f4e..5e0e78ad 100644 --- a/roles/bkp-docker-to-local/meta/main.yml +++ b/roles/sys-bkp-docker-to-local/meta/main.yml @@ -23,8 +23,8 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - bkp-provider - - alert-compose - - cln-failed-docker-backups - - maint-lock - - bkp-directory-validator \ No newline at end of file + - sys-bkp-provider + - sys-alm-compose + - sys-cln-faild-bkps + - sys-lock + - sys-bkp-directory-validator \ No newline at end of file diff --git a/roles/bkp-docker-to-local/tasks/main.yml b/roles/sys-bkp-docker-to-local/tasks/main.yml similarity index 70% rename from roles/bkp-docker-to-local/tasks/main.yml rename to roles/sys-bkp-docker-to-local/tasks/main.yml index fe0c79f7..20519312 100644 --- a/roles/bkp-docker-to-local/tasks/main.yml +++ b/roles/sys-bkp-docker-to-local/tasks/main.yml @@ -21,18 +21,18 @@ include_tasks: reset.yml when: mode_reset | bool and run_once_bkp_docker_to_local is not defined -- name: configure bkp-docker-to-local-everything.cymais.service +- name: configure sys-bkp-docker-to-local-everything.cymais.service template: - src: bkp-docker-to-local-everything.service.j2 - dest: /etc/systemd/system/bkp-docker-to-local-everything.cymais.service - notify: reload bkp-docker-to-local-everything.cymais.service + src: sys-bkp-docker-to-local-everything.service.j2 + dest: /etc/systemd/system/sys-bkp-docker-to-local-everything.cymais.service + notify: reload sys-bkp-docker-to-local-everything.cymais.service when: run_once_bkp_docker_to_local is not defined -- name: configure bkp-docker-to-local.cymais.service +- name: configure sys-bkp-docker-to-local.cymais.service template: - src: bkp-docker-to-local.service.j2 - dest: /etc/systemd/system/bkp-docker-to-local.cymais.service - notify: reload bkp-docker-to-local.cymais.service + src: sys-bkp-docker-to-local.service.j2 + dest: /etc/systemd/system/sys-bkp-docker-to-local.cymais.service + notify: reload sys-bkp-docker-to-local.cymais.service when: run_once_bkp_docker_to_local is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -40,9 +40,9 @@ service_name: "{{ role_name }}" when: run_once_bkp_docker_to_local is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_backup_docker_to_local}}" when: run_once_bkp_docker_to_local is not defined diff --git a/roles/bkp-docker-to-local/tasks/reset.yml b/roles/sys-bkp-docker-to-local/tasks/reset.yml similarity index 100% rename from roles/bkp-docker-to-local/tasks/reset.yml rename to roles/sys-bkp-docker-to-local/tasks/reset.yml diff --git a/roles/bkp-docker-to-local/tasks/seed-database-to-backup.yml b/roles/sys-bkp-docker-to-local/tasks/seed-database-to-backup.yml similarity index 100% rename from roles/bkp-docker-to-local/tasks/seed-database-to-backup.yml rename to roles/sys-bkp-docker-to-local/tasks/seed-database-to-backup.yml diff --git a/roles/bkp-docker-to-local/templates/bkp-docker-to-local-everything.service.j2 b/roles/sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local-everything.service.j2 similarity index 53% rename from roles/bkp-docker-to-local/templates/bkp-docker-to-local-everything.service.j2 rename to roles/sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local-everything.service.j2 index 16856972..76c7ee3e 100644 --- a/roles/bkp-docker-to-local/templates/bkp-docker-to-local-everything.service.j2 +++ b/roles/sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local-everything.service.j2 @@ -1,9 +1,9 @@ [Unit] Description=backup docker volumes to local folder -OnFailure=alert-compose.cymais@%n.service cln-failed-docker-backups.cymais.service +OnFailure=sys-alm-compose.cymais@%n.service sys-cln-faild-bkps.cymais.service [Service] Type=oneshot -ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{ system_maintenance_backup_services | reject('equalto', 'bkp-docker-to-local') | join(' ') }} --timeout "{{system_maintenance_lock_timeout_backup_services}}"' +ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{ system_maintenance_backup_services | reject('equalto', 'sys-bkp-docker-to-local') | join(' ') }} --timeout "{{system_maintenance_lock_timeout_backup_services}}"' ExecStart=/bin/sh -c '/usr/bin/python {{backup_docker_to_local_folder}}backup-docker-to-local.py --compose-dir {{path_docker_compose_instances}} --everything' -ExecStartPost=/bin/sh -c '/bin/systemctl start maint-docker-heal.cymais.service &' \ No newline at end of file +ExecStartPost=/bin/sh -c '/bin/systemctl start sys-rpr-docker-soft.cymais.service &' \ No newline at end of file diff --git a/roles/bkp-docker-to-local/templates/bkp-docker-to-local.service.j2 b/roles/sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local.service.j2 similarity index 51% rename from roles/bkp-docker-to-local/templates/bkp-docker-to-local.service.j2 rename to roles/sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local.service.j2 index aad4e82c..45ab0ab7 100644 --- a/roles/bkp-docker-to-local/templates/bkp-docker-to-local.service.j2 +++ b/roles/sys-bkp-docker-to-local/templates/sys-bkp-docker-to-local.service.j2 @@ -1,9 +1,9 @@ [Unit] Description=backup docker volumes to local folder -OnFailure=alert-compose.cymais@%n.service cln-failed-docker-backups.cymais.service +OnFailure=sys-alm-compose.cymais@%n.service sys-cln-faild-bkps.cymais.service [Service] Type=oneshot -ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{ system_maintenance_backup_services | reject('equalto', 'bkp-docker-to-local-everything') | join(' ') }} --timeout "{{system_maintenance_lock_timeout_backup_services}}"' +ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{ system_maintenance_backup_services | reject('equalto', 'sys-bkp-docker-to-local-everything') | join(' ') }} --timeout "{{system_maintenance_lock_timeout_backup_services}}"' ExecStart=/bin/sh -c '/usr/bin/python {{backup_docker_to_local_folder}}backup-docker-to-local.py --compose-dir {{path_docker_compose_instances}}' -ExecStartPost=/bin/sh -c '/bin/systemctl start maint-docker-heal.cymais.service &' \ No newline at end of file +ExecStartPost=/bin/sh -c '/bin/systemctl start sys-rpr-docker-soft.cymais.service &' \ No newline at end of file diff --git a/roles/bkp-docker-to-local/vars/main.yml b/roles/sys-bkp-docker-to-local/vars/main.yml similarity index 60% rename from roles/bkp-docker-to-local/vars/main.yml rename to roles/sys-bkp-docker-to-local/vars/main.yml index be74fde6..d49412d8 100644 --- a/roles/bkp-docker-to-local/vars/main.yml +++ b/roles/sys-bkp-docker-to-local/vars/main.yml @@ -1,2 +1,2 @@ bkp_docker_to_local_pkg: backup-docker-to-local -application_id: docker-to-local + diff --git a/roles/bkp-provider-user/README.md b/roles/sys-bkp-provider-user/README.md similarity index 100% rename from roles/bkp-provider-user/README.md rename to roles/sys-bkp-provider-user/README.md diff --git a/roles/bkp-provider-user/files/backup b/roles/sys-bkp-provider-user/files/backup similarity index 100% rename from roles/bkp-provider-user/files/backup rename to roles/sys-bkp-provider-user/files/backup diff --git a/roles/bkp-provider-user/files/ssh-wrapper.sh b/roles/sys-bkp-provider-user/files/ssh-wrapper.sh similarity index 84% rename from roles/bkp-provider-user/files/ssh-wrapper.sh rename to roles/sys-bkp-provider-user/files/ssh-wrapper.sh index 0d06b5b0..af0eaaa6 100644 --- a/roles/bkp-provider-user/files/ssh-wrapper.sh +++ b/roles/sys-bkp-provider-user/files/ssh-wrapper.sh @@ -12,8 +12,8 @@ hashed_machine_id="$($get_hashed_machine_id | head -c 64)" get_backup_types="find /Backups/$hashed_machine_id/ -maxdepth 1 -type d -execdir basename {} ;"; -# @todo This configuration is not scalable yet. If other backup services then bkp-docker-to-local are integrated, this logic needs to be optimized -get_version_directories="ls -d /Backups/$hashed_machine_id/bkp-docker-to-local/*" +# @todo This configuration is not scalable yet. If other backup services then sys-bkp-docker-to-local are integrated, this logic needs to be optimized +get_version_directories="ls -d /Backups/$hashed_machine_id/sys-bkp-docker-to-local/*" last_version_directory="$($get_version_directories | tail -1)" rsync_command="sudo rsync --server --sender -blogDtpre.iLsfxCIvu . $last_version_directory/" diff --git a/roles/bkp-provider-user/meta/main.yml b/roles/sys-bkp-provider-user/meta/main.yml similarity index 97% rename from roles/bkp-provider-user/meta/main.yml rename to roles/sys-bkp-provider-user/meta/main.yml index c8ae8112..c4d27150 100644 --- a/roles/bkp-provider-user/meta/main.yml +++ b/roles/sys-bkp-provider-user/meta/main.yml @@ -23,4 +23,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - core-sshd + - sys-svc-sshd diff --git a/roles/bkp-provider-user/tasks/main.yml b/roles/sys-bkp-provider-user/tasks/main.yml similarity index 100% rename from roles/bkp-provider-user/tasks/main.yml rename to roles/sys-bkp-provider-user/tasks/main.yml diff --git a/roles/bkp-provider-user/templates/authorized_keys.j2 b/roles/sys-bkp-provider-user/templates/authorized_keys.j2 similarity index 100% rename from roles/bkp-provider-user/templates/authorized_keys.j2 rename to roles/sys-bkp-provider-user/templates/authorized_keys.j2 diff --git a/roles/bkp-provider-user/vars/main.yml b/roles/sys-bkp-provider-user/vars/main.yml similarity index 86% rename from roles/bkp-provider-user/vars/main.yml rename to roles/sys-bkp-provider-user/vars/main.yml index 6ede8f70..d316cbb2 100644 --- a/roles/bkp-provider-user/vars/main.yml +++ b/roles/sys-bkp-provider-user/vars/main.yml @@ -1,3 +1,3 @@ authorized_keys_path: '{{ inventory_dir }}/files/{{ inventory_hostname }}/home/backup/.ssh/authorized_keys' authorized_keys_list: '{{ lookup(''file'', authorized_keys_path).splitlines() }}' -application_id: provider-user + diff --git a/roles/bkp-provider/README.md b/roles/sys-bkp-provider/README.md similarity index 90% rename from roles/bkp-provider/README.md rename to roles/sys-bkp-provider/README.md index 9bd3ff4b..4b9c91ba 100644 --- a/roles/bkp-provider/README.md +++ b/roles/sys-bkp-provider/README.md @@ -8,7 +8,7 @@ This role sets up and manages the host as a backup provider. It establishes the Optimized for automated backup processes, this role: - Configures the host to provide backup services. -- Integrates seamlessly with the [bkp-provider-user](../bkp-provider-user/README.md) and [cln-backups-timer](../cln-backups-timer/README.md) roles. +- Integrates seamlessly with the [sys-bkp-provider-user](../sys-bkp-provider-user/README.md) and [sys-cln-bkps-timer](../sys-cln-bkps-timer/README.md) roles. - Lays the foundation for secure and extensible backup operations. ## Purpose diff --git a/roles/bkp-provider/meta/main.yml b/roles/sys-bkp-provider/meta/main.yml similarity index 93% rename from roles/bkp-provider/meta/main.yml rename to roles/sys-bkp-provider/meta/main.yml index 154b6405..9c4c4d1b 100644 --- a/roles/bkp-provider/meta/main.yml +++ b/roles/sys-bkp-provider/meta/main.yml @@ -23,5 +23,5 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - bkp-provider-user - - cln-backups-timer + - sys-bkp-provider-user + - sys-cln-bkps-timer diff --git a/roles/cln-docker-anonymous-volumes/README.md b/roles/sys-cln-anon-volumes/README.md similarity index 100% rename from roles/cln-docker-anonymous-volumes/README.md rename to roles/sys-cln-anon-volumes/README.md diff --git a/roles/cln-docker-anonymous-volumes/meta/main.yml b/roles/sys-cln-anon-volumes/meta/main.yml similarity index 97% rename from roles/cln-docker-anonymous-volumes/meta/main.yml rename to roles/sys-cln-anon-volumes/meta/main.yml index 3ff67918..462d949c 100644 --- a/roles/cln-docker-anonymous-volumes/meta/main.yml +++ b/roles/sys-cln-anon-volumes/meta/main.yml @@ -24,4 +24,4 @@ galaxy_info: issue_tracker_url: "https://github.com/kevinveenbirkenbach/web-app-volume-cleaner/issues" documentation: "https://github.com/kevinveenbirkenbach/web-app-volume-cleaner" dependencies: - - core-daemon + - sys-rst-daemon diff --git a/roles/cln-docker-anonymous-volumes/tasks/main.yml b/roles/sys-cln-anon-volumes/tasks/main.yml similarity index 100% rename from roles/cln-docker-anonymous-volumes/tasks/main.yml rename to roles/sys-cln-anon-volumes/tasks/main.yml diff --git a/roles/cln-docker-storage-optimizer/files/__init__.py b/roles/sys-cln-anon-volumes/vars/main.yml similarity index 100% rename from roles/cln-docker-storage-optimizer/files/__init__.py rename to roles/sys-cln-anon-volumes/vars/main.yml diff --git a/roles/cln-backups-service/README.md b/roles/sys-cln-bkps-service/README.md similarity index 95% rename from roles/cln-backups-service/README.md rename to roles/sys-cln-bkps-service/README.md index 121c9e60..e5755f9f 100644 --- a/roles/cln-backups-service/README.md +++ b/roles/sys-cln-bkps-service/README.md @@ -10,7 +10,7 @@ Optimized for effective disk space management, this role: - Installs required packages (e.g. [lsof](https://en.wikipedia.org/wiki/Lsof) and [psutil](https://pypi.org/project/psutil/)) using pacman. - Creates a directory for storing cleanup scripts. - Deploys a Python script that deletes old backup directories when disk usage is too high. -- Configures a systemd service to run the cleanup script, with notifications via [alert-compose](../alert-compose/README.md). +- Configures a systemd service to run the cleanup script, with notifications via [sys-alm-compose](../sys-alm-compose/README.md). ## Purpose diff --git a/roles/cln-backups-service/files/cln-backups.py b/roles/sys-cln-bkps-service/files/sys-cln-backups.py similarity index 100% rename from roles/cln-backups-service/files/cln-backups.py rename to roles/sys-cln-bkps-service/files/sys-cln-backups.py diff --git a/roles/sys-cln-bkps-service/handlers/main.yml b/roles/sys-cln-bkps-service/handlers/main.yml new file mode 100644 index 00000000..f8caac02 --- /dev/null +++ b/roles/sys-cln-bkps-service/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-cln-backups.cymais.service" + systemd: + name: sys-cln-backups.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/cln-backups-service/meta/main.yml b/roles/sys-cln-bkps-service/meta/main.yml similarity index 93% rename from roles/cln-backups-service/meta/main.yml rename to roles/sys-cln-bkps-service/meta/main.yml index 4f4575f3..8aca4855 100644 --- a/roles/cln-backups-service/meta/main.yml +++ b/roles/sys-cln-bkps-service/meta/main.yml @@ -23,6 +23,6 @@ galaxy_info: documentation: "https://s.veen.world/cymais" dependencies: - gen-python-pip - - alert-compose - - maint-lock - - core-daemon + - sys-alm-compose + - sys-lock + - sys-rst-daemon diff --git a/roles/cln-backups-service/tasks/main.yml b/roles/sys-cln-bkps-service/tasks/main.yml similarity index 67% rename from roles/cln-backups-service/tasks/main.yml rename to roles/sys-cln-bkps-service/tasks/main.yml index 9445055a..deedb229 100644 --- a/roles/cln-backups-service/tasks/main.yml +++ b/roles/sys-cln-bkps-service/tasks/main.yml @@ -13,17 +13,17 @@ mode: 0755 when: run_once_cleanup_backups_service is not defined -- name: create cln-backups.py +- name: create sys-cln-backups.py copy: - src: "cln-backups.py" - dest: "{{cleanup_backups_directory}}cln-backups.py" + src: "sys-cln-backups.py" + dest: "{{cleanup_backups_directory}}sys-cln-backups.py" when: run_once_cleanup_backups_service is not defined -- name: create cln-backups.cymais.service +- name: create sys-cln-backups.cymais.service template: - src: "cln-backups.service.j2" - dest: "/etc/systemd/system/cln-backups.cymais.service" - notify: reload cln-backups.cymais.service + src: "sys-cln-backups.service.j2" + dest: "/etc/systemd/system/sys-cln-backups.cymais.service" + notify: reload sys-cln-backups.cymais.service when: run_once_cleanup_backups_service is not defined - name: run the cleanup_backups_service tasks once diff --git a/roles/cln-backups-service/templates/cln-backups.service.j2 b/roles/sys-cln-bkps-service/templates/sys-cln-backups.service.j2 similarity index 68% rename from roles/cln-backups-service/templates/cln-backups.service.j2 rename to roles/sys-cln-bkps-service/templates/sys-cln-backups.service.j2 index 96d6e3ac..dfb55498 100644 --- a/roles/cln-backups-service/templates/cln-backups.service.j2 +++ b/roles/sys-cln-bkps-service/templates/sys-cln-backups.service.j2 @@ -1,8 +1,8 @@ [Unit] Description=delete old backups -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{system_maintenance_cleanup_services| join(' ') }} --timeout "{{system_maintenance_lock_timeout_backup_services}}"' -ExecStart=/bin/sh -c '/usr/bin/python {{cleanup_backups_directory}}cln-backups.py --backups-folder-path {{backups_folder_path}} --maximum-backup-size-percent {{size_percent_maximum_backup}}' \ No newline at end of file +ExecStart=/bin/sh -c '/usr/bin/python {{cleanup_backups_directory}}sys-cln-backups.py --backups-folder-path {{backups_folder_path}} --maximum-backup-size-percent {{size_percent_maximum_backup}}' \ No newline at end of file diff --git a/roles/sys-cln-bkps-service/vars/main.yml b/roles/sys-cln-bkps-service/vars/main.yml new file mode 100644 index 00000000..fe31198a --- /dev/null +++ b/roles/sys-cln-bkps-service/vars/main.yml @@ -0,0 +1,2 @@ +cleanup_backups_directory: '{{path_administrator_scripts}}sys-cln-backups/' + diff --git a/roles/cln-backups-timer/README.md b/roles/sys-cln-bkps-timer/README.md similarity index 65% rename from roles/cln-backups-timer/README.md rename to roles/sys-cln-bkps-timer/README.md index 1df40862..d10307a2 100644 --- a/roles/cln-backups-timer/README.md +++ b/roles/sys-cln-bkps-timer/README.md @@ -2,13 +2,13 @@ ## Description -This role sets up a systemd timer to schedule the periodic cleanup of old backups. It leverages the cln-backups-service role to perform the actual cleanup operation. +This role sets up a systemd timer to schedule the periodic cleanup of old backups. It leverages the sys-cln-bkps-service role to perform the actual cleanup operation. ## Overview Optimized for automated maintenance, this role: - Sets a fact for the service name. -- Integrates with the [gen-timer](../gen-timer/README.md) role to schedule cln-backups tasks at defined intervals. +- Integrates with the [sys-timer](../sys-timer/README.md) role to schedule sys-cln-backups tasks at defined intervals. ## Purpose @@ -17,5 +17,5 @@ The primary purpose of this role is to automate the scheduling of backup cleanup ## Features - **Timer Scheduling:** Configures a systemd timer to trigger the backup cleanup service. -- **Role Integration:** Works in conjunction with the cln-backups-service role. +- **Role Integration:** Works in conjunction with the sys-cln-bkps-service role. - **Idempotency:** Ensures the timer tasks execute only once per playbook run. diff --git a/roles/cln-backups-timer/meta/main.yml b/roles/sys-cln-bkps-timer/meta/main.yml similarity index 84% rename from roles/cln-backups-timer/meta/main.yml rename to roles/sys-cln-bkps-timer/meta/main.yml index b1a4e115..b6389674 100644 --- a/roles/cln-backups-timer/meta/main.yml +++ b/roles/sys-cln-bkps-timer/meta/main.yml @@ -1,7 +1,7 @@ --- galaxy_info: author: "Kevin Veen-Birkenbach" - description: "Schedules periodic cleanup of old backups by configuring a systemd timer to trigger the cln-backups-service role." + description: "Schedules periodic cleanup of old backups by configuring a systemd timer to trigger the sys-cln-bkps-service role." license: "CyMaIS NonCommercial License (CNCL)" license_url: "https://s.veen.world/cncl" company: | @@ -22,5 +22,5 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - cln-backups-service - - core-daemon + - sys-cln-bkps-service + - sys-rst-daemon diff --git a/roles/cln-backups-timer/tasks/main.yml b/roles/sys-cln-bkps-timer/tasks/main.yml similarity index 69% rename from roles/cln-backups-timer/tasks/main.yml rename to roles/sys-cln-bkps-timer/tasks/main.yml index 7eeefcbf..d59c5b39 100644 --- a/roles/cln-backups-timer/tasks/main.yml +++ b/roles/sys-cln-bkps-timer/tasks/main.yml @@ -1,11 +1,11 @@ -- name: set service_name to cln-backups +- name: set service_name to sys-cln-backups set_fact: - service_name: "cln-backups" + service_name: "sys-cln-backups" when: run_once_cleanup_backups_timer is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_cleanup_backups}}" when: run_once_cleanup_backups_timer is not defined diff --git a/roles/cln-certs/README.md b/roles/sys-cln-certs/README.md similarity index 77% rename from roles/cln-certs/README.md rename to roles/sys-cln-certs/README.md index 4f1f961d..f295a7ca 100644 --- a/roles/cln-certs/README.md +++ b/roles/sys-cln-certs/README.md @@ -7,9 +7,9 @@ This Ansible role automates the detection, revocation and deletion of unused Let ## Overview - Installs the `certreap` cleanup tool using the `pkgmgr-install` role -- Deploys and configures a `cln-certs.cymais.service` systemd unit -- (Optionally) Sets up a recurring cleanup via a systemd timer using the `gen-timer` role -- Integrates with `alert-compose` to send failure notifications +- Deploys and configures a `sys-cln-certs.cymais.service` systemd unit +- (Optionally) Sets up a recurring cleanup via a systemd timer using the `sys-timer` role +- Integrates with `sys-alm-compose` to send failure notifications - Ensures idempotent execution with a `run_once_cleanup_certs` flag ## Features @@ -18,16 +18,16 @@ This Ansible role automates the detection, revocation and deletion of unused Let Uses `pkgmgr-install` to install the `certreap` binary. - **Systemd Service Configuration** - Deploys `cln-certs.cymais.service` and reloads/restarts it on changes. + Deploys `sys-cln-certs.cymais.service` and reloads/restarts it on changes. - **Systemd Timer Scheduling** - Optionally wires in a timer via the `gen-timer` role, controlled by the `on_calendar_cleanup_certs` variable. + Optionally wires in a timer via the `sys-timer` role, controlled by the `on_calendar_cleanup_certs` variable. - **Smart Execution Logic** Prevents multiple runs in one play by setting a `run_once_cleanup_certs` fact. - **Failure Notification** - Triggers `alert-compose.cymais@cln-certs.cymais.service` on failure. + Triggers `sys-alm-compose.cymais@sys-cln-certs.cymais.service` on failure. ## Further Resources diff --git a/roles/sys-cln-certs/handlers/main.yml b/roles/sys-cln-certs/handlers/main.yml new file mode 100644 index 00000000..234443ad --- /dev/null +++ b/roles/sys-cln-certs/handlers/main.yml @@ -0,0 +1,6 @@ +- name: "Reload and restart sys-cln-certs.cymais.service" + systemd: + name: sys-cln-certs.cymais.service + enabled: yes + daemon_reload: yes + state: restarted \ No newline at end of file diff --git a/roles/cln-certs/meta/main.yml b/roles/sys-cln-certs/meta/main.yml similarity index 95% rename from roles/cln-certs/meta/main.yml rename to roles/sys-cln-certs/meta/main.yml index 9ee95b82..1b57a4ee 100644 --- a/roles/cln-certs/meta/main.yml +++ b/roles/sys-cln-certs/meta/main.yml @@ -24,5 +24,5 @@ galaxy_info: documentation: "https://github.com/kevinveenbirkenbach/certreap#readme" dependencies: - - alert-compose - - core-daemon + - sys-alm-compose + - sys-rst-daemon diff --git a/roles/cln-certs/tasks/main.yml b/roles/sys-cln-certs/tasks/main.yml similarity index 69% rename from roles/cln-certs/tasks/main.yml rename to roles/sys-cln-certs/tasks/main.yml index a95ec484..42a7b67f 100644 --- a/roles/cln-certs/tasks/main.yml +++ b/roles/sys-cln-certs/tasks/main.yml @@ -5,11 +5,11 @@ package_name: certreap when: run_once_cleanup_certs is not defined -- name: configure cln-certs.cymais.service +- name: configure sys-cln-certs.cymais.service template: - src: cln-certs.service.j2 - dest: /etc/systemd/system/cln-certs.cymais.service - notify: Reload and restart cln-certs.cymais.service + src: sys-cln-certs.service.j2 + dest: /etc/systemd/system/sys-cln-certs.cymais.service + notify: Reload and restart sys-cln-certs.cymais.service when: run_once_cleanup_certs is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -17,9 +17,9 @@ service_name: "{{ role_name }}" when: run_once_cleanup_certs is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{ on_calendar_cleanup_certs }}" when: run_once_cleanup_certs is not defined diff --git a/roles/cln-certs/templates/cln-certs.service.j2 b/roles/sys-cln-certs/templates/sys-cln-certs.service.j2 similarity index 80% rename from roles/cln-certs/templates/cln-certs.service.j2 rename to roles/sys-cln-certs/templates/sys-cln-certs.service.j2 index f2b28f52..dd73f6d6 100644 --- a/roles/cln-certs/templates/cln-certs.service.j2 +++ b/roles/sys-cln-certs/templates/sys-cln-certs.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Detect, revoke, and delete unused Let's Encrypt certificates based on active NGINX configuration files. -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/cln-disc-space/README.md b/roles/sys-cln-disc-space/README.md similarity index 100% rename from roles/cln-disc-space/README.md rename to roles/sys-cln-disc-space/README.md diff --git a/roles/sys-cln-disc-space/handlers/main.yml b/roles/sys-cln-disc-space/handlers/main.yml new file mode 100644 index 00000000..ee79e7be --- /dev/null +++ b/roles/sys-cln-disc-space/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-cln-disc-space.cymais.service" + systemd: + name: sys-cln-disc-space.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/cln-disc-space/meta/main.yml b/roles/sys-cln-disc-space/meta/main.yml similarity index 93% rename from roles/cln-disc-space/meta/main.yml rename to roles/sys-cln-disc-space/meta/main.yml index 039c9cb4..204d1030 100644 --- a/roles/cln-disc-space/meta/main.yml +++ b/roles/sys-cln-disc-space/meta/main.yml @@ -22,6 +22,6 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose - - maint-lock - - core-daemon + - sys-alm-compose + - sys-lock + - sys-rst-daemon diff --git a/roles/sys-cln-disc-space/tasks/main.yml b/roles/sys-cln-disc-space/tasks/main.yml new file mode 100644 index 00000000..29c1af1b --- /dev/null +++ b/roles/sys-cln-disc-space/tasks/main.yml @@ -0,0 +1,26 @@ +- name: "create {{cleanup_disc_space_folder}}" + file: + path: "{{cleanup_disc_space_folder}}" + state: directory + mode: 0755 + +- name: create sys-cln-disc-space.sh + template: + src: sys-cln-disc-space.sh.j2 + dest: "{{cleanup_disc_space_folder}}sys-cln-disc-space.sh" + +- name: create sys-cln-disc-space.cymais.service + template: + src: sys-cln-disc-space.service.j2 + dest: /etc/systemd/system/sys-cln-disc-space.cymais.service + notify: reload sys-cln-disc-space.cymais.service + +- name: "set 'service_name' to '{{ role_name }}'" + set_fact: + service_name: "{{ role_name }}" + +- name: "include role for sys-timer for {{service_name}}" + include_role: + name: sys-timer + vars: + on_calendar: "{{on_calendar_cleanup_disc_space}}" \ No newline at end of file diff --git a/roles/cln-disc-space/templates/cln-disc-space.service.j2 b/roles/sys-cln-disc-space/templates/sys-cln-disc-space.service.j2 similarity index 65% rename from roles/cln-disc-space/templates/cln-disc-space.service.j2 rename to roles/sys-cln-disc-space/templates/sys-cln-disc-space.service.j2 index 87eec030..428c10e0 100644 --- a/roles/cln-disc-space/templates/cln-disc-space.service.j2 +++ b/roles/sys-cln-disc-space/templates/sys-cln-disc-space.service.j2 @@ -1,8 +1,8 @@ [Unit] Description=freeing disc space -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{system_maintenance_cleanup_services| join(' ') }} --timeout "{{system_maintenance_lock_timeout_backup_services}}"' -ExecStart=/bin/sh -c '/bin/bash {{cleanup_disc_space_folder}}cln-disc-space.sh {{size_percent_cleanup_disc_space}}' \ No newline at end of file +ExecStart=/bin/sh -c '/bin/bash {{cleanup_disc_space_folder}}sys-cln-disc-space.sh {{size_percent_cleanup_disc_space}}' \ No newline at end of file diff --git a/roles/cln-disc-space/templates/cln-disc-space.sh.j2 b/roles/sys-cln-disc-space/templates/sys-cln-disc-space.sh.j2 similarity index 90% rename from roles/cln-disc-space/templates/cln-disc-space.sh.j2 rename to roles/sys-cln-disc-space/templates/sys-cln-disc-space.sh.j2 index 0a56741a..54a2a311 100644 --- a/roles/cln-disc-space/templates/cln-disc-space.sh.j2 +++ b/roles/sys-cln-disc-space/templates/sys-cln-disc-space.sh.j2 @@ -24,7 +24,7 @@ if [ "$force_freeing" = true ]; then {% if backups_folder_path is defined and size_percent_maximum_backup is defined %} echo "cleaning up backups" && - python {{path_administrator_scripts}}cln-backups/cln-backups.py --backups-folder-path {{backups_folder_path}} --maximum-backup-size-percent {{size_percent_maximum_backup}} || exit 2 + python {{path_administrator_scripts}}sys-cln-backups/sys-cln-backups.py --backups-folder-path {{backups_folder_path}} --maximum-backup-size-percent {{size_percent_maximum_backup}} || exit 2 {% endif %} if pacman -Qs $package > /dev/null ; then diff --git a/roles/sys-cln-disc-space/vars/main.yml b/roles/sys-cln-disc-space/vars/main.yml new file mode 100644 index 00000000..376f4a44 --- /dev/null +++ b/roles/sys-cln-disc-space/vars/main.yml @@ -0,0 +1 @@ +cleanup_disc_space_folder: '{{path_administrator_scripts}}sys-cln-disc-space/' diff --git a/roles/cln-domains/README.md b/roles/sys-cln-domains/README.md similarity index 98% rename from roles/cln-domains/README.md rename to roles/sys-cln-domains/README.md index 61232452..1acfc7c4 100644 --- a/roles/cln-domains/README.md +++ b/roles/sys-cln-domains/README.md @@ -1,4 +1,4 @@ -# cln-domains +# sys-cln-domains ## Description diff --git a/roles/cln-domains/meta/main.yml b/roles/sys-cln-domains/meta/main.yml similarity index 97% rename from roles/cln-domains/meta/main.yml rename to roles/sys-cln-domains/meta/main.yml index e032320b..8744da51 100644 --- a/roles/cln-domains/meta/main.yml +++ b/roles/sys-cln-domains/meta/main.yml @@ -22,4 +22,4 @@ galaxy_info: documentation: "https://s.veen.world/cymais" dependencies: - srv-web-7-4-core - - core-daemon \ No newline at end of file + - sys-rst-daemon \ No newline at end of file diff --git a/roles/cln-domains/tasks/main.yml b/roles/sys-cln-domains/tasks/main.yml similarity index 100% rename from roles/cln-domains/tasks/main.yml rename to roles/sys-cln-domains/tasks/main.yml diff --git a/roles/cln-domains/tasks/remove_deprecated_nginx_configs.yml b/roles/sys-cln-domains/tasks/remove_deprecated_nginx_configs.yml similarity index 100% rename from roles/cln-domains/tasks/remove_deprecated_nginx_configs.yml rename to roles/sys-cln-domains/tasks/remove_deprecated_nginx_configs.yml diff --git a/tests/unit/roles/cln-docker-storage-optimizer/__init__.py b/roles/sys-cln-domains/vars/main.yml similarity index 100% rename from tests/unit/roles/cln-docker-storage-optimizer/__init__.py rename to roles/sys-cln-domains/vars/main.yml diff --git a/roles/cln-failed-docker-backups/README.md b/roles/sys-cln-faild-bkps/README.md similarity index 55% rename from roles/cln-failed-docker-backups/README.md rename to roles/sys-cln-faild-bkps/README.md index 6014421b..0393cac5 100644 --- a/roles/cln-failed-docker-backups/README.md +++ b/roles/sys-cln-faild-bkps/README.md @@ -2,15 +2,15 @@ ## Description -This role cleans up failed Docker backups by pulling a [Git repository](https://github.com/kevinveenbirkenbach/cln-failed-docker-backups) that contains cleanup scripts and configuring a systemd service to execute them. It ensures that failed or incomplete backups are removed to free up disk space and maintain a healthy backup environment. +This role cleans up failed Docker backups by pulling a [Git repository](https://github.com/kevinveenbirkenbach/sys-cln-faild-bkps) that contains cleanup scripts and configuring a systemd service to execute them. It ensures that failed or incomplete backups are removed to free up disk space and maintain a healthy backup environment. ## Overview Optimized for backup maintenance, this role: -- Clones the cln-failed-docker-backups repository. +- Clones the sys-cln-faild-bkps repository. - Configures a systemd service to run the cleanup script. -- Integrates with the [gen-timer](../gen-timer/README.md) role to schedule periodic cleanup. -- Works in conjunction with the bkp-directory-validator role for additional verification. +- Integrates with the [sys-timer](../sys-timer/README.md) role to schedule periodic cleanup. +- Works in conjunction with the sys-bkp-directory-validator role for additional verification. ## Purpose @@ -21,4 +21,4 @@ The primary purpose of this role is to remove failed Docker backups automaticall - **Repository Cloning:** Retrieves the latest cleanup scripts from a Git repository. - **Service Configuration:** Sets up a systemd service to run the cleanup tasks. - **Timer Integration:** Schedules periodic cleanup through a systemd timer. -- **Dependency Integration:** Works with bkp-directory-validator to enhance backup integrity. \ No newline at end of file +- **Dependency Integration:** Works with sys-bkp-directory-validator to enhance backup integrity. \ No newline at end of file diff --git a/roles/sys-cln-faild-bkps/handlers/main.yml b/roles/sys-cln-faild-bkps/handlers/main.yml new file mode 100644 index 00000000..d698963e --- /dev/null +++ b/roles/sys-cln-faild-bkps/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "Reload sys-cln-faild-bkps.cymais.service" + systemd: + name: sys-cln-faild-bkps.cymais.service + enabled: yes + daemon_reload: yes \ No newline at end of file diff --git a/roles/cln-failed-docker-backups/meta/main.yml b/roles/sys-cln-faild-bkps/meta/main.yml similarity index 89% rename from roles/cln-failed-docker-backups/meta/main.yml rename to roles/sys-cln-faild-bkps/meta/main.yml index 893f4eab..cf4289e0 100644 --- a/roles/cln-failed-docker-backups/meta/main.yml +++ b/roles/sys-cln-faild-bkps/meta/main.yml @@ -22,7 +22,7 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose - - maint-lock - - bkp-directory-validator - - core-daemon + - sys-alm-compose + - sys-lock + - sys-bkp-directory-validator + - sys-rst-daemon diff --git a/roles/cln-failed-docker-backups/tasks/main.yml b/roles/sys-cln-faild-bkps/tasks/main.yml similarity index 77% rename from roles/cln-failed-docker-backups/tasks/main.yml rename to roles/sys-cln-faild-bkps/tasks/main.yml index 174d5ed0..0bb5b4d9 100644 --- a/roles/cln-failed-docker-backups/tasks/main.yml +++ b/roles/sys-cln-faild-bkps/tasks/main.yml @@ -13,15 +13,15 @@ - name: Set fact for backup_docker_to_local_cleanup_script set_fact: - backup_docker_to_local_cleanup_script: "{{ pkgmgr_output.stdout.rstrip('/') ~ '/cln-all.sh' }}" + backup_docker_to_local_cleanup_script: "{{ pkgmgr_output.stdout.rstrip('/') ~ '/sys-cln-all.sh' }}" changed_when: false when: run_once_cln_failed_docker_backups is not defined -- name: configure cln-failed-docker-backups.cymais.service +- name: configure sys-cln-faild-bkps.cymais.service template: - src: cln-failed-docker-backups.service.j2 - dest: /etc/systemd/system/cln-failed-docker-backups.cymais.service - notify: Reload cln-failed-docker-backups.cymais.service + src: sys-cln-faild-bkps.service.j2 + dest: /etc/systemd/system/sys-cln-faild-bkps.cymais.service + notify: Reload sys-cln-faild-bkps.cymais.service when: run_once_cln_failed_docker_backups is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -29,9 +29,9 @@ service_name: "{{ role_name }}" when: run_once_cln_failed_docker_backups is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_cleanup_failed_docker}}" when: run_once_cln_failed_docker_backups is not defined diff --git a/roles/cln-failed-docker-backups/templates/cln-failed-docker-backups.service.j2 b/roles/sys-cln-faild-bkps/templates/sys-cln-faild-bkps.service.j2 similarity index 90% rename from roles/cln-failed-docker-backups/templates/cln-failed-docker-backups.service.j2 rename to roles/sys-cln-faild-bkps/templates/sys-cln-faild-bkps.service.j2 index 8f08cf4b..e3a0ee8d 100644 --- a/roles/cln-failed-docker-backups/templates/cln-failed-docker-backups.service.j2 +++ b/roles/sys-cln-faild-bkps/templates/sys-cln-faild-bkps.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Cleaning up failed docker volume backups -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/cln-failed-docker-backups/vars/main.yml b/roles/sys-cln-faild-bkps/vars/main.yml similarity index 61% rename from roles/cln-failed-docker-backups/vars/main.yml rename to roles/sys-cln-faild-bkps/vars/main.yml index e737fdc7..61525714 100644 --- a/roles/cln-failed-docker-backups/vars/main.yml +++ b/roles/sys-cln-faild-bkps/vars/main.yml @@ -1,2 +1,2 @@ cln_failed_docker_backups_pkg: cleanup-failed-docker-backups -application_id: failed-docker-backups + diff --git a/roles/mon-bot-btrfs/README.md b/roles/sys-hlth-btrfs/README.md similarity index 71% rename from roles/mon-bot-btrfs/README.md rename to roles/sys-hlth-btrfs/README.md index a6a56fba..42bbb767 100644 --- a/roles/mon-bot-btrfs/README.md +++ b/roles/sys-hlth-btrfs/README.md @@ -1,4 +1,4 @@ -# mon-bot-btrfs +# sys-hlth-btrfs ## Description Checks the health of all mounted Btrfs filesystems by inspecting device error counters. @@ -7,10 +7,10 @@ Checks the health of all mounted Btrfs filesystems by inspecting device error co - Iterates over every Btrfs filesystem. - Runs `btrfs device stats` and alerts if any error counters are non-zero. - Hooks into systemd and a timer for regular checks. -- On failure, calls `alert-compose.cymais@…` for notification. +- On failure, calls `sys-alm-compose.cymais@…` for notification. ## Usage Just include this role in your playbook; it will: -1. Deploy a small shell script under `{{ path_administrator_scripts }}/mon-bot-btrfs/`. +1. Deploy a small shell script under `{{ path_administrator_scripts }}/sys-hlth-btrfs/`. 2. Install a `.service` and `.timer` unit. -3. Send alerts via `alert-compose` if any filesystem shows errors. +3. Send alerts via `sys-alm-compose` if any filesystem shows errors. diff --git a/roles/mon-bot-btrfs/files/mon-bot-btrfs.sh b/roles/sys-hlth-btrfs/files/sys-hlth-btrfs.sh similarity index 100% rename from roles/mon-bot-btrfs/files/mon-bot-btrfs.sh rename to roles/sys-hlth-btrfs/files/sys-hlth-btrfs.sh diff --git a/roles/sys-hlth-btrfs/handlers/main.yml b/roles/sys-hlth-btrfs/handlers/main.yml new file mode 100644 index 00000000..afdb1590 --- /dev/null +++ b/roles/sys-hlth-btrfs/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-btrfs.cymais.service" + systemd: + name: sys-hlth-btrfs.cymais.service + enabled: yes + daemon_reload: yes \ No newline at end of file diff --git a/roles/mon-bot-btrfs/meta/main.yml b/roles/sys-hlth-btrfs/meta/main.yml similarity index 96% rename from roles/mon-bot-btrfs/meta/main.yml rename to roles/sys-hlth-btrfs/meta/main.yml index 2ccbbac5..779e5174 100644 --- a/roles/mon-bot-btrfs/meta/main.yml +++ b/roles/sys-hlth-btrfs/meta/main.yml @@ -21,4 +21,4 @@ galaxy_info: repository: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/sys-hlth-btrfs/tasks/main.yml b/roles/sys-hlth-btrfs/tasks/main.yml new file mode 100644 index 00000000..f1c5a4f6 --- /dev/null +++ b/roles/sys-hlth-btrfs/tasks/main.yml @@ -0,0 +1,26 @@ +- name: "create {{docker_health_btrfs_folder}}" + file: + path: "{{docker_health_btrfs_folder}}" + state: directory + mode: 0755 + +- name: create sys-hlth-btrfs.sh + copy: + src: sys-hlth-btrfs.sh + dest: "{{docker_health_btrfs_folder}}sys-hlth-btrfs.sh" + +- name: create sys-hlth-btrfs.cymais.service + template: + src: sys-hlth-btrfs.service.j2 + dest: /etc/systemd/system/sys-hlth-btrfs.cymais.service + notify: reload sys-hlth-btrfs.cymais.service + +- name: "set 'service_name' to '{{ role_name }}'" + set_fact: + service_name: "{{ role_name }}" + +- name: "include role for sys-timer for {{service_name}}" + include_role: + name: sys-timer + vars: + on_calendar: "{{on_calendar_health_btrfs}}" diff --git a/roles/sys-hlth-btrfs/templates/sys-hlth-btrfs.service.j2 b/roles/sys-hlth-btrfs/templates/sys-hlth-btrfs.service.j2 new file mode 100644 index 00000000..0ce3a47b --- /dev/null +++ b/roles/sys-hlth-btrfs/templates/sys-hlth-btrfs.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=Check btrfs status +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/bin/bash {{docker_health_btrfs_folder}}sys-hlth-btrfs.sh diff --git a/roles/sys-hlth-btrfs/vars/main.yml b/roles/sys-hlth-btrfs/vars/main.yml new file mode 100644 index 00000000..170d0826 --- /dev/null +++ b/roles/sys-hlth-btrfs/vars/main.yml @@ -0,0 +1 @@ +docker_health_btrfs_folder: '{{path_administrator_scripts}}sys-hlth-btrfs/' diff --git a/roles/mon-bot-csp/README.md b/roles/sys-hlth-csp/README.md similarity index 92% rename from roles/mon-bot-csp/README.md rename to roles/sys-hlth-csp/README.md index 564d6fc1..8525b1a2 100644 --- a/roles/mon-bot-csp/README.md +++ b/roles/sys-hlth-csp/README.md @@ -13,7 +13,7 @@ Designed for Archlinux systems, this role periodically checks whether web resour - **CSP Resource Validation:** Uses Puppeteer to simulate browser requests and detect blocked resources. - **Domain Extraction:** Parses all `.conf` files in the NGINX config folder to determine the list of domains to check. - **Automated Execution:** Registers a systemd service and timer for recurring health checks. -- **Error Notification:** Integrates with `alert-compose` for alerting on failure. +- **Error Notification:** Integrates with `sys-alm-compose` for alerting on failure. ## License diff --git a/roles/mon-bot-csp/files/mon-bot-csp.py b/roles/sys-hlth-csp/files/sys-hlth-csp.py similarity index 100% rename from roles/mon-bot-csp/files/mon-bot-csp.py rename to roles/sys-hlth-csp/files/sys-hlth-csp.py diff --git a/roles/sys-hlth-csp/handlers/main.yml b/roles/sys-hlth-csp/handlers/main.yml new file mode 100644 index 00000000..c522ba1e --- /dev/null +++ b/roles/sys-hlth-csp/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-csp.cymais.service" + systemd: + name: sys-hlth-csp.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/mon-bot-csp/meta/main.yml b/roles/sys-hlth-csp/meta/main.yml similarity index 97% rename from roles/mon-bot-csp/meta/main.yml rename to roles/sys-hlth-csp/meta/main.yml index 212026d3..bb1b9861 100644 --- a/roles/mon-bot-csp/meta/main.yml +++ b/roles/sys-hlth-csp/meta/main.yml @@ -24,4 +24,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose \ No newline at end of file + - sys-alm-compose \ No newline at end of file diff --git a/roles/mon-bot-csp/tasks/main.yml b/roles/sys-hlth-csp/tasks/main.yml similarity index 80% rename from roles/mon-bot-csp/tasks/main.yml rename to roles/sys-hlth-csp/tasks/main.yml index 01f2c869..92c5ea13 100644 --- a/roles/mon-bot-csp/tasks/main.yml +++ b/roles/sys-hlth-csp/tasks/main.yml @@ -16,18 +16,18 @@ mode: 0755 when: run_once_health_csp is not defined -- name: copy mon-bot-csp.py +- name: copy sys-hlth-csp.py copy: - src: mon-bot-csp.py + src: sys-hlth-csp.py dest: "{{ health_csp_crawler_script }}" mode: 0755 when: run_once_health_csp is not defined -- name: create mon-bot-csp.cymais.service +- name: create sys-hlth-csp.cymais.service template: - src: mon-bot-csp.service.j2 - dest: /etc/systemd/system/mon-bot-csp.cymais.service - notify: reload mon-bot-csp.cymais.service + src: sys-hlth-csp.service.j2 + dest: /etc/systemd/system/sys-hlth-csp.cymais.service + notify: reload sys-hlth-csp.cymais.service when: run_once_health_csp is not defined - name: set service_name to role_name @@ -37,7 +37,7 @@ - name: include systemd timer role include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{ on_calendar_health_csp_crawler }}" when: run_once_health_csp is not defined diff --git a/roles/mon-bot-csp/templates/mon-bot-csp.service.j2 b/roles/sys-hlth-csp/templates/sys-hlth-csp.service.j2 similarity index 82% rename from roles/mon-bot-csp/templates/mon-bot-csp.service.j2 rename to roles/sys-hlth-csp/templates/sys-hlth-csp.service.j2 index a3f12771..315de568 100644 --- a/roles/mon-bot-csp/templates/mon-bot-csp.service.j2 +++ b/roles/sys-hlth-csp/templates/sys-hlth-csp.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Check for CSP-blocked resources via Puppeteer -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/sys-hlth-csp/vars/main.yml b/roles/sys-hlth-csp/vars/main.yml new file mode 100644 index 00000000..8a11ed9a --- /dev/null +++ b/roles/sys-hlth-csp/vars/main.yml @@ -0,0 +1,3 @@ +health_csp_crawler_folder: '{{ path_administrator_scripts }}sys-hlth-csp/' +health_csp_crawler_script: '{{ health_csp_crawler_folder }}sys-hlth-csp.py' + diff --git a/roles/mon-bot-disc-space/README.md b/roles/sys-hlth-disc-space/README.md similarity index 79% rename from roles/mon-bot-disc-space/README.md rename to roles/sys-hlth-disc-space/README.md index ab617387..84ea0637 100644 --- a/roles/mon-bot-disc-space/README.md +++ b/roles/sys-hlth-disc-space/README.md @@ -1,4 +1,4 @@ -# mon-bot-disc-space +# sys-hlth-disc-space ## Description Monitors disk-space usage and alerts if any filesystem usage exceeds your defined threshold. @@ -6,5 +6,5 @@ Monitors disk-space usage and alerts if any filesystem usage exceeds your define ## Features - Uses `df` to gather current usage. - Compares against `size_percent_disc_space_warning` threshold. -- Sends failure alerts via `alert-compose`. +- Sends failure alerts via `sys-alm-compose`. - Runs on a configurable systemd timer. diff --git a/roles/mon-bot-disc-space/files/mon-bot-disc-space.sh b/roles/sys-hlth-disc-space/files/sys-hlth-disc-space.sh similarity index 100% rename from roles/mon-bot-disc-space/files/mon-bot-disc-space.sh rename to roles/sys-hlth-disc-space/files/sys-hlth-disc-space.sh diff --git a/roles/sys-hlth-disc-space/handlers/main.yml b/roles/sys-hlth-disc-space/handlers/main.yml new file mode 100644 index 00000000..36b887fb --- /dev/null +++ b/roles/sys-hlth-disc-space/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-disc-space.cymais.service" + systemd: + name: sys-hlth-disc-space.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/mon-bot-disc-space/meta/main.yml b/roles/sys-hlth-disc-space/meta/main.yml similarity index 96% rename from roles/mon-bot-disc-space/meta/main.yml rename to roles/sys-hlth-disc-space/meta/main.yml index 5c803821..57c45b6d 100644 --- a/roles/mon-bot-disc-space/meta/main.yml +++ b/roles/sys-hlth-disc-space/meta/main.yml @@ -21,4 +21,4 @@ galaxy_info: repository: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/sys-hlth-disc-space/tasks/main.yml b/roles/sys-hlth-disc-space/tasks/main.yml new file mode 100644 index 00000000..dd225bde --- /dev/null +++ b/roles/sys-hlth-disc-space/tasks/main.yml @@ -0,0 +1,26 @@ +- name: "create {{health_disc_space_folder}}" + file: + path: "{{health_disc_space_folder}}" + state: directory + mode: 0755 + +- name: create sys-hlth-disc-space.sh + copy: + src: sys-hlth-disc-space.sh + dest: "{{health_disc_space_folder}}sys-hlth-disc-space.sh" + +- name: create sys-hlth-disc-space.cymais.service + template: + src: sys-hlth-disc-space.service.j2 + dest: /etc/systemd/system/sys-hlth-disc-space.cymais.service + notify: reload sys-hlth-disc-space.cymais.service + +- name: "set 'service_name' to '{{ role_name }}'" + set_fact: + service_name: "{{ role_name }}" + +- name: "include role for sys-timer for {{service_name}}" + include_role: + name: sys-timer + vars: + on_calendar: "{{on_calendar_health_disc_space}}" \ No newline at end of file diff --git a/roles/sys-hlth-disc-space/templates/sys-hlth-disc-space.service.j2 b/roles/sys-hlth-disc-space/templates/sys-hlth-disc-space.service.j2 new file mode 100644 index 00000000..58ae9e10 --- /dev/null +++ b/roles/sys-hlth-disc-space/templates/sys-hlth-disc-space.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=checking disc space +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/bin/bash {{health_disc_space_folder}}sys-hlth-disc-space.sh {{size_percent_disc_space_warning}} diff --git a/roles/sys-hlth-disc-space/vars/main.yml b/roles/sys-hlth-disc-space/vars/main.yml new file mode 100644 index 00000000..29818224 --- /dev/null +++ b/roles/sys-hlth-disc-space/vars/main.yml @@ -0,0 +1 @@ +health_disc_space_folder: '{{path_administrator_scripts}}sys-hlth-disc-space/' diff --git a/roles/mon-bot-docker-container/README.md b/roles/sys-hlth-docker-container/README.md similarity index 70% rename from roles/mon-bot-docker-container/README.md rename to roles/sys-hlth-docker-container/README.md index 3f6e4043..cbcd7fd7 100644 --- a/roles/mon-bot-docker-container/README.md +++ b/roles/sys-hlth-docker-container/README.md @@ -8,14 +8,14 @@ This Ansible role is designed to ensure the health of Docker containers running - `vars/main.yml`: Variable definitions for the script's directory. - `handlers/main.yml`: Handlers to reload and restart the systemd service and timer. -- `files/mon-bot-docker-container.sh`: The script that checks the container health. +- `files/sys-hlth-docker-container.sh`: The script that checks the container health. - `tasks/main.yml`: Tasks to create necessary directories, copy scripts, and create systemd service and timer. -- `templates/mon-bot-docker-container.cymais.service.j2`: Systemd service template. -- `templates/mon-bot-docker-container.cymais.timer.j2`: Systemd timer template. +- `templates/sys-hlth-docker-container.cymais.service.j2`: Systemd service template. +- `templates/sys-hlth-docker-container.cymais.timer.j2`: Systemd timer template. - `meta/main.yml`: Meta information declaring dependencies for the role. ## Usage To use this role, include it in your playbook and set the `path_administrator_scripts` variable to the desired path for the health check scripts. -Ensure that the `alert-compose` dependency is satisfied for error notifications. \ No newline at end of file +Ensure that the `sys-alm-compose` dependency is satisfied for error notifications. \ No newline at end of file diff --git a/roles/mon-bot-docker-container/files/mon-bot-docker-container.sh b/roles/sys-hlth-docker-container/files/sys-hlth-docker-container.sh similarity index 100% rename from roles/mon-bot-docker-container/files/mon-bot-docker-container.sh rename to roles/sys-hlth-docker-container/files/sys-hlth-docker-container.sh diff --git a/roles/sys-hlth-docker-container/handlers/main.yml b/roles/sys-hlth-docker-container/handlers/main.yml new file mode 100644 index 00000000..546bba09 --- /dev/null +++ b/roles/sys-hlth-docker-container/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-docker-container.cymais.service" + systemd: + name: sys-hlth-docker-container.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/mon-bot-docker-container/meta/main.yml b/roles/sys-hlth-docker-container/meta/main.yml similarity index 96% rename from roles/mon-bot-docker-container/meta/main.yml rename to roles/sys-hlth-docker-container/meta/main.yml index 509202e8..3b0f78c0 100644 --- a/roles/mon-bot-docker-container/meta/main.yml +++ b/roles/sys-hlth-docker-container/meta/main.yml @@ -21,4 +21,4 @@ galaxy_info: repository: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/mon-bot-docker-container/tasks/main.yml b/roles/sys-hlth-docker-container/tasks/main.yml similarity index 62% rename from roles/mon-bot-docker-container/tasks/main.yml rename to roles/sys-hlth-docker-container/tasks/main.yml index 97da273d..7f862314 100644 --- a/roles/mon-bot-docker-container/tasks/main.yml +++ b/roles/sys-hlth-docker-container/tasks/main.yml @@ -5,17 +5,17 @@ mode: 0755 when: run_once_health_docker_container is not defined -- name: create mon-bot-docker-container.sh +- name: create sys-hlth-docker-container.sh copy: - src: mon-bot-docker-container.sh - dest: "{{health_docker_container_folder}}mon-bot-docker-container.sh" + src: sys-hlth-docker-container.sh + dest: "{{health_docker_container_folder}}sys-hlth-docker-container.sh" when: run_once_health_docker_container is not defined -- name: create mon-bot-docker-container.cymais.service +- name: create sys-hlth-docker-container.cymais.service template: - src: mon-bot-docker-container.service.j2 - dest: /etc/systemd/system/mon-bot-docker-container.cymais.service - notify: reload mon-bot-docker-container.cymais.service + src: sys-hlth-docker-container.service.j2 + dest: /etc/systemd/system/sys-hlth-docker-container.cymais.service + notify: reload sys-hlth-docker-container.cymais.service when: run_once_health_docker_container is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -23,9 +23,9 @@ service_name: "{{ role_name }}" when: run_once_health_docker_container is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_health_docker_container}}" when: run_once_health_docker_container is not defined diff --git a/roles/sys-hlth-docker-container/templates/sys-hlth-docker-container.service.j2 b/roles/sys-hlth-docker-container/templates/sys-hlth-docker-container.service.j2 new file mode 100644 index 00000000..0afff279 --- /dev/null +++ b/roles/sys-hlth-docker-container/templates/sys-hlth-docker-container.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=Checking docker health +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/bin/bash {{health_docker_container_folder}}sys-hlth-docker-container.sh diff --git a/roles/sys-hlth-docker-container/vars/main.yml b/roles/sys-hlth-docker-container/vars/main.yml new file mode 100644 index 00000000..97396055 --- /dev/null +++ b/roles/sys-hlth-docker-container/vars/main.yml @@ -0,0 +1 @@ +health_docker_container_folder: '{{path_administrator_scripts}}sys-hlth-docker-container/' diff --git a/roles/mon-bot-docker-volumes/README.md b/roles/sys-hlth-docker-volumes/README.md similarity index 73% rename from roles/mon-bot-docker-volumes/README.md rename to roles/sys-hlth-docker-volumes/README.md index 341568fc..5148d1f7 100644 --- a/roles/mon-bot-docker-volumes/README.md +++ b/roles/sys-hlth-docker-volumes/README.md @@ -8,17 +8,17 @@ This role checks for anonymous Docker volumes that are not bound to a container - `vars/main.yml`: Variable definitions for the script's directory and whitelist. - `handlers/main.yml`: Handlers to reload and restart the systemd service and timer. -- `files/mon-bot-docker-volumes.sh`: The script that checks for anonymous Docker volumes and excludes whitelisted volumes. +- `files/sys-hlth-docker-volumes.sh`: The script that checks for anonymous Docker volumes and excludes whitelisted volumes. - `tasks/main.yml`: Tasks to create necessary directories, copy scripts, and create systemd service and timer. -- `templates/mon-bot-docker-volumes.cymais.service.j2`: Systemd service template, including the whitelisted volumes as a parameter. -- `templates/mon-bot-docker-volumes.cymais.timer.j2`: Systemd timer template. +- `templates/sys-hlth-docker-volumes.cymais.service.j2`: Systemd service template, including the whitelisted volumes as a parameter. +- `templates/sys-hlth-docker-volumes.cymais.timer.j2`: Systemd timer template. - `meta/main.yml`: Meta information declaring dependencies for the role. ## Usage Include this role in your playbook and set the `path_administrator_scripts` variable to determine where the health check scripts should reside. Define `whitelisted_anonymous_volumes` in `vars/main.yml` with an array of volume IDs that should be ignored by the health check. -Ensure that the `alert-compose` dependency is satisfied for error notifications. +Ensure that the `sys-alm-compose` dependency is satisfied for error notifications. ## Created with AI This script was created with the help of AI. The full conversation you find [here](https://chat.openai.com/share/1fa829f1-f001-4111-b1d4-1b2e3d583da2). diff --git a/roles/mon-bot-docker-volumes/files/mon-bot-docker-volumes.sh b/roles/sys-hlth-docker-volumes/files/sys-hlth-docker-volumes.sh similarity index 100% rename from roles/mon-bot-docker-volumes/files/mon-bot-docker-volumes.sh rename to roles/sys-hlth-docker-volumes/files/sys-hlth-docker-volumes.sh diff --git a/roles/sys-hlth-docker-volumes/handlers/main.yml b/roles/sys-hlth-docker-volumes/handlers/main.yml new file mode 100644 index 00000000..9b0dd52f --- /dev/null +++ b/roles/sys-hlth-docker-volumes/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-docker-volumes.cymais.service" + systemd: + name: sys-hlth-docker-volumes.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/mon-bot-docker-volumes/meta/main.yml b/roles/sys-hlth-docker-volumes/meta/main.yml similarity index 96% rename from roles/mon-bot-docker-volumes/meta/main.yml rename to roles/sys-hlth-docker-volumes/meta/main.yml index 1eb3c292..004e9bf4 100644 --- a/roles/mon-bot-docker-volumes/meta/main.yml +++ b/roles/sys-hlth-docker-volumes/meta/main.yml @@ -21,4 +21,4 @@ galaxy_info: repository: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/mon-bot-docker-volumes/tasks/main.yml b/roles/sys-hlth-docker-volumes/tasks/main.yml similarity index 63% rename from roles/mon-bot-docker-volumes/tasks/main.yml rename to roles/sys-hlth-docker-volumes/tasks/main.yml index 0bd3e9c3..68c04ca3 100644 --- a/roles/mon-bot-docker-volumes/tasks/main.yml +++ b/roles/sys-hlth-docker-volumes/tasks/main.yml @@ -5,17 +5,17 @@ mode: 0755 when: run_once_health_docker_volumes is not defined -- name: create mon-bot-docker-volumes.sh +- name: create sys-hlth-docker-volumes.sh copy: - src: mon-bot-docker-volumes.sh - dest: "{{health_docker_volumes_folder}}mon-bot-docker-volumes.sh" + src: sys-hlth-docker-volumes.sh + dest: "{{health_docker_volumes_folder}}sys-hlth-docker-volumes.sh" when: run_once_health_docker_volumes is not defined -- name: create mon-bot-docker-volumes.cymais.service +- name: create sys-hlth-docker-volumes.cymais.service template: - src: mon-bot-docker-volumes.service.j2 - dest: /etc/systemd/system/mon-bot-docker-volumes.cymais.service - notify: reload mon-bot-docker-volumes.cymais.service + src: sys-hlth-docker-volumes.service.j2 + dest: /etc/systemd/system/sys-hlth-docker-volumes.cymais.service + notify: reload sys-hlth-docker-volumes.cymais.service when: run_once_health_docker_volumes is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -23,9 +23,9 @@ service_name: "{{ role_name }}" when: run_once_health_docker_volumes is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_health_docker_volumes}}" when: run_once_health_docker_volumes is not defined diff --git a/roles/sys-hlth-docker-volumes/templates/sys-hlth-docker-volumes.service.j2 b/roles/sys-hlth-docker-volumes/templates/sys-hlth-docker-volumes.service.j2 new file mode 100644 index 00000000..c1698699 --- /dev/null +++ b/roles/sys-hlth-docker-volumes/templates/sys-hlth-docker-volumes.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=Checking docker health +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/bin/bash {{ health_docker_volumes_folder }}sys-hlth-docker-volumes.sh "{{ whitelisted_anonymous_docker_volumes | join(' ') }}" diff --git a/roles/sys-hlth-docker-volumes/vars/main.yml b/roles/sys-hlth-docker-volumes/vars/main.yml new file mode 100644 index 00000000..ca37c6cf --- /dev/null +++ b/roles/sys-hlth-docker-volumes/vars/main.yml @@ -0,0 +1 @@ +health_docker_volumes_folder: '{{path_administrator_scripts}}sys-hlth-docker-volumes/' diff --git a/roles/mon-bot-journalctl/README.md b/roles/sys-hlth-journalctl/README.md similarity index 83% rename from roles/mon-bot-journalctl/README.md rename to roles/sys-hlth-journalctl/README.md index c0e6bb51..9b997acc 100644 --- a/roles/mon-bot-journalctl/README.md +++ b/roles/sys-hlth-journalctl/README.md @@ -1,4 +1,4 @@ -# mon-bot-journalctl +# sys-hlth-journalctl ## Description Scans `journalctl` over the last day for ā€œerrorā€ entries and alerts if any are found. @@ -7,7 +7,7 @@ Scans `journalctl` over the last day for ā€œerrorā€ entries and alerts if any a - Runs `journalctl --since '1 day ago' | grep -i error`. - Exits non-zero on matches. - Scheduled via systemd timer. -- Alerts via `alert-compose` on detection. +- Alerts via `sys-alm-compose` on detection. ## Usage Include the role; set `on_calendar_health_journalctl` for your preferred schedule. diff --git a/roles/mon-bot-journalctl/files/mon-bot-journalctl.sh b/roles/sys-hlth-journalctl/files/sys-hlth-journalctl.sh similarity index 100% rename from roles/mon-bot-journalctl/files/mon-bot-journalctl.sh rename to roles/sys-hlth-journalctl/files/sys-hlth-journalctl.sh diff --git a/roles/sys-hlth-journalctl/handlers/main.yml b/roles/sys-hlth-journalctl/handlers/main.yml new file mode 100644 index 00000000..3e05a954 --- /dev/null +++ b/roles/sys-hlth-journalctl/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-journalctl.cymais.service" + systemd: + name: sys-hlth-journalctl.cymais.service + enabled: yes + daemon_reload: yes \ No newline at end of file diff --git a/roles/mon-bot-journalctl/meta/main.yml b/roles/sys-hlth-journalctl/meta/main.yml similarity index 96% rename from roles/mon-bot-journalctl/meta/main.yml rename to roles/sys-hlth-journalctl/meta/main.yml index eee45595..9dde6cbf 100644 --- a/roles/mon-bot-journalctl/meta/main.yml +++ b/roles/sys-hlth-journalctl/meta/main.yml @@ -21,4 +21,4 @@ galaxy_info: repository: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/mon-bot-journalctl/tasks/main.yml b/roles/sys-hlth-journalctl/tasks/main.yml similarity index 63% rename from roles/mon-bot-journalctl/tasks/main.yml rename to roles/sys-hlth-journalctl/tasks/main.yml index 2e6614e7..0ba4bedf 100644 --- a/roles/mon-bot-journalctl/tasks/main.yml +++ b/roles/sys-hlth-journalctl/tasks/main.yml @@ -5,17 +5,17 @@ mode: 0755 when: run_once_health_journalctl is not defined -- name: create mon-bot-journalctl.sh +- name: create sys-hlth-journalctl.sh copy: - src: mon-bot-journalctl.sh - dest: "{{health_journalctl_folder}}mon-bot-journalctl.sh" + src: sys-hlth-journalctl.sh + dest: "{{health_journalctl_folder}}sys-hlth-journalctl.sh" when: run_once_health_journalctl is not defined -- name: create mon-bot-journalctl.cymais.service +- name: create sys-hlth-journalctl.cymais.service template: - src: mon-bot-journalctl.service.j2 - dest: /etc/systemd/system/mon-bot-journalctl.cymais.service - notify: reload mon-bot-journalctl.cymais.service + src: sys-hlth-journalctl.service.j2 + dest: /etc/systemd/system/sys-hlth-journalctl.cymais.service + notify: reload sys-hlth-journalctl.cymais.service when: run_once_health_journalctl is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -23,9 +23,9 @@ service_name: "{{ role_name }}" when: run_once_health_journalctl is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_health_journalctl}}" when: run_once_health_journalctl is not defined diff --git a/roles/sys-hlth-journalctl/templates/sys-hlth-journalctl.service.j2 b/roles/sys-hlth-journalctl/templates/sys-hlth-journalctl.service.j2 new file mode 100644 index 00000000..5c54d399 --- /dev/null +++ b/roles/sys-hlth-journalctl/templates/sys-hlth-journalctl.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=checking journalctl health +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/bin/bash {{health_journalctl_folder}}sys-hlth-journalctl.sh diff --git a/roles/sys-hlth-journalctl/vars/main.yml b/roles/sys-hlth-journalctl/vars/main.yml new file mode 100644 index 00000000..60e130dc --- /dev/null +++ b/roles/sys-hlth-journalctl/vars/main.yml @@ -0,0 +1,2 @@ +health_journalctl_folder: '{{path_administrator_scripts}}sys-hlth-journalctl/' + diff --git a/roles/sys-hlth-msmtp/README.md b/roles/sys-hlth-msmtp/README.md new file mode 100644 index 00000000..f9b8ecdf --- /dev/null +++ b/roles/sys-hlth-msmtp/README.md @@ -0,0 +1,21 @@ +# sys-hlth-msmtp + +## Description + +This Ansible role sends periodic health check emails using **msmtp** to verify that your mail transport agent is operational. It deploys a simple script and hooks it into a systemd service and timer, with failure notifications sent via Telegram. + +## Overview + +Optimized for Archlinux, this role creates the required directory structure, installs and configures the sys-hlth-check script, and integrates with the **sys-alm-telegram** role. It uses the **sys-timer** role to schedule regular checks based on your customizable `OnCalendar` setting. + +## Purpose + +The **sys-hlth-msmtp** role ensures that your mail transport system stays available by sending a test email at defined intervals. If the email fails, a Telegram alert is triggered, allowing you to detect and address issues before they impact users. + +## Features + +- **Directory & Script Deployment:** Sets up `sys-hlth-msmtp/` and deploys a templated Bash script to send test emails via msmtp. +- **Systemd Service & Timer:** Provides `.service` and `.timer` units to run the check and schedule it automatically. +- **Failure Notifications:** Leverages **sys-alm-telegram** to push alerts when the script exits with an error. +- **Configurable Schedule:** Define your desired check frequency using the `on_calendar_health_msmtp` variable. +- **Email Destination:** Specify the recipient via the `users.administrator.email` variable. \ No newline at end of file diff --git a/roles/sys-hlth-msmtp/handlers/main.yml b/roles/sys-hlth-msmtp/handlers/main.yml new file mode 100644 index 00000000..cc5db0d9 --- /dev/null +++ b/roles/sys-hlth-msmtp/handlers/main.yml @@ -0,0 +1,5 @@ +- name: reload sys-hlth-msmtp.cymais.service + systemd: + name: sys-hlth-msmtp.cymais.service + enabled: yes + daemon_reload: yes \ No newline at end of file diff --git a/roles/mon-bot-msmtp/meta/main.yml b/roles/sys-hlth-msmtp/meta/main.yml similarity index 96% rename from roles/mon-bot-msmtp/meta/main.yml rename to roles/sys-hlth-msmtp/meta/main.yml index 89fb456e..9b1fd70e 100644 --- a/roles/mon-bot-msmtp/meta/main.yml +++ b/roles/sys-hlth-msmtp/meta/main.yml @@ -21,4 +21,4 @@ galaxy_info: repository: "https://s.veen.world/cymais" documentation: "https://s.veen.world/cymais" dependencies: - - alert-telegram + - sys-alm-telegram diff --git a/roles/sys-hlth-msmtp/tasks/main.yml b/roles/sys-hlth-msmtp/tasks/main.yml new file mode 100644 index 00000000..4270734b --- /dev/null +++ b/roles/sys-hlth-msmtp/tasks/main.yml @@ -0,0 +1,27 @@ +- name: "create {{ health_msmtp_folder }}" + file: + path: "{{ health_msmtp_folder }}" + state: directory + mode: 0755 + +- name: create sys-hlth-msmtp.sh + template: + src: sys-hlth-msmtp.sh.j2 + dest: "{{ health_msmtp_folder }}sys-hlth-msmtp.sh" + mode: '0755' + +- name: create sys-hlth-msmtp.cymais.service + template: + src: sys-hlth-msmtp.service.j2 + dest: /etc/systemd/system/sys-hlth-msmtp.cymais.service + notify: reload sys-hlth-msmtp.cymais.service + +- name: "set 'service_name' to '{{ role_name }}'" + set_fact: + service_name: "{{ role_name }}" + +- name: include role for sys-timer for {{ service_name }} + include_role: + name: sys-timer + vars: + on_calendar: "{{ on_calendar_health_msmtp }}" \ No newline at end of file diff --git a/roles/sys-hlth-msmtp/templates/sys-hlth-msmtp.service.j2 b/roles/sys-hlth-msmtp/templates/sys-hlth-msmtp.service.j2 new file mode 100644 index 00000000..d2c1278f --- /dev/null +++ b/roles/sys-hlth-msmtp/templates/sys-hlth-msmtp.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=Check msmtp liveliness +OnFailure=sys-alm-telegram.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/bin/bash {{ health_msmtp_folder }}sys-hlth-msmtp.sh diff --git a/roles/mon-bot-msmtp/templates/mon-bot-msmtp.sh.j2 b/roles/sys-hlth-msmtp/templates/sys-hlth-msmtp.sh.j2 similarity index 100% rename from roles/mon-bot-msmtp/templates/mon-bot-msmtp.sh.j2 rename to roles/sys-hlth-msmtp/templates/sys-hlth-msmtp.sh.j2 diff --git a/roles/sys-hlth-msmtp/vars/main.yml b/roles/sys-hlth-msmtp/vars/main.yml new file mode 100644 index 00000000..48c2b250 --- /dev/null +++ b/roles/sys-hlth-msmtp/vars/main.yml @@ -0,0 +1,2 @@ +health_msmtp_folder: '{{ path_administrator_scripts }}sys-hlth-msmtp/' + diff --git a/roles/mon-bot-webserver/README.md b/roles/sys-hlth-webserver/README.md similarity index 93% rename from roles/mon-bot-webserver/README.md rename to roles/sys-hlth-webserver/README.md index 70e3c7db..d3791901 100644 --- a/roles/mon-bot-webserver/README.md +++ b/roles/sys-hlth-webserver/README.md @@ -1,4 +1,4 @@ -# mon-bot-webserver +# sys-hlth-webserver ## Description Verifies that each of your Nginx‐served domains returns an expected HTTP status (200, 301, etc.) and alerts on deviations. @@ -6,7 +6,7 @@ Verifies that each of your Nginx‐served domains returns an expected HTTP statu ## Features - Scans your `nginx` server block `.conf` files for domains. - HEAD-requests each domain and compares against per-domain expected codes. -- Reports any mismatches via `alert-compose`. +- Reports any mismatches via `sys-alm-compose`. - Scheduled via a systemd timer for periodic health sweeps. ## Usage diff --git a/roles/mon-bot-webserver/TODO.md b/roles/sys-hlth-webserver/TODO.md similarity index 100% rename from roles/mon-bot-webserver/TODO.md rename to roles/sys-hlth-webserver/TODO.md diff --git a/roles/sys-hlth-webserver/handlers/main.yml b/roles/sys-hlth-webserver/handlers/main.yml new file mode 100644 index 00000000..56b17371 --- /dev/null +++ b/roles/sys-hlth-webserver/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-hlth-webserver.cymais.service" + systemd: + name: sys-hlth-webserver.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/mon-bot-webserver/meta/main.yml b/roles/sys-hlth-webserver/meta/main.yml similarity index 97% rename from roles/mon-bot-webserver/meta/main.yml rename to roles/sys-hlth-webserver/meta/main.yml index 9de9a1ea..29ab808d 100644 --- a/roles/mon-bot-webserver/meta/main.yml +++ b/roles/sys-hlth-webserver/meta/main.yml @@ -23,4 +23,4 @@ galaxy_info: documentation: "https://s.veen.world/cymais" dependencies: - gen-python-pip - - alert-compose + - sys-alm-compose diff --git a/roles/mon-bot-webserver/tasks/main.yml b/roles/sys-hlth-webserver/tasks/main.yml similarity index 66% rename from roles/mon-bot-webserver/tasks/main.yml rename to roles/sys-hlth-webserver/tasks/main.yml index 19557c81..64259245 100644 --- a/roles/mon-bot-webserver/tasks/main.yml +++ b/roles/sys-hlth-webserver/tasks/main.yml @@ -11,17 +11,17 @@ mode: 0755 when: run_once_health_nginx is not defined -- name: create mon-bot-webserver.py +- name: create sys-hlth-webserver.py template: - src: mon-bot-webserver.py.j2 - dest: "{{ health_nginx_folder }}mon-bot-webserver.py" + src: sys-hlth-webserver.py.j2 + dest: "{{ health_nginx_folder }}sys-hlth-webserver.py" when: run_once_health_nginx is not defined -- name: create mon-bot-webserver.cymais.service +- name: create sys-hlth-webserver.cymais.service template: - src: mon-bot-webserver.service.j2 - dest: /etc/systemd/system/mon-bot-webserver.cymais.service - notify: reload mon-bot-webserver.cymais.service + src: sys-hlth-webserver.service.j2 + dest: /etc/systemd/system/sys-hlth-webserver.cymais.service + notify: reload sys-hlth-webserver.cymais.service when: run_once_health_nginx is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -29,9 +29,9 @@ service_name: "{{ role_name }}" when: run_once_health_nginx is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_health_nginx}}" when: run_once_health_nginx is not defined diff --git a/roles/mon-bot-webserver/templates/mon-bot-webserver.py.j2 b/roles/sys-hlth-webserver/templates/sys-hlth-webserver.py.j2 similarity index 100% rename from roles/mon-bot-webserver/templates/mon-bot-webserver.py.j2 rename to roles/sys-hlth-webserver/templates/sys-hlth-webserver.py.j2 diff --git a/roles/sys-hlth-webserver/templates/sys-hlth-webserver.service.j2 b/roles/sys-hlth-webserver/templates/sys-hlth-webserver.service.j2 new file mode 100644 index 00000000..fbb5b6e9 --- /dev/null +++ b/roles/sys-hlth-webserver/templates/sys-hlth-webserver.service.j2 @@ -0,0 +1,7 @@ +[Unit] +Description=Check nginx configuration status +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStart=/usr/bin/python3 {{ health_nginx_folder }}sys-hlth-webserver.py diff --git a/roles/sys-hlth-webserver/vars/main.yml b/roles/sys-hlth-webserver/vars/main.yml new file mode 100644 index 00000000..81f86970 --- /dev/null +++ b/roles/sys-hlth-webserver/vars/main.yml @@ -0,0 +1 @@ +health_nginx_folder: '{{ path_administrator_scripts }}sys-hlth-webserver/' diff --git a/roles/maint-lock/README.md b/roles/sys-lock/README.md similarity index 100% rename from roles/maint-lock/README.md rename to roles/sys-lock/README.md diff --git a/roles/maint-lock/files/maint-lock.py b/roles/sys-lock/files/sys-lock.py similarity index 100% rename from roles/maint-lock/files/maint-lock.py rename to roles/sys-lock/files/sys-lock.py diff --git a/roles/maint-lock/meta/main.yml b/roles/sys-lock/meta/main.yml similarity index 100% rename from roles/maint-lock/meta/main.yml rename to roles/sys-lock/meta/main.yml diff --git a/roles/maint-lock/tasks/main.yml b/roles/sys-lock/tasks/main.yml similarity index 93% rename from roles/maint-lock/tasks/main.yml rename to roles/sys-lock/tasks/main.yml index efdebe3a..811475f0 100644 --- a/roles/maint-lock/tasks/main.yml +++ b/roles/sys-lock/tasks/main.yml @@ -1,7 +1,7 @@ --- - name: create {{path_system_lock_script}} copy: - src: maint-lock.py + src: sys-lock.py dest: "{{path_system_lock_script}}" when: run_once_system_maintenance_lock is not defined diff --git a/roles/cln-docker-storage-optimizer/README.md b/roles/sys-opt-ssd-hdd/README.md similarity index 100% rename from roles/cln-docker-storage-optimizer/README.md rename to roles/sys-opt-ssd-hdd/README.md diff --git a/roles/sys-opt-ssd-hdd/files/__init__.py b/roles/sys-opt-ssd-hdd/files/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/roles/cln-docker-storage-optimizer/files/cln-docker-storage-optimizer.py b/roles/sys-opt-ssd-hdd/files/sys-opt-ssd-hdd.py similarity index 100% rename from roles/cln-docker-storage-optimizer/files/cln-docker-storage-optimizer.py rename to roles/sys-opt-ssd-hdd/files/sys-opt-ssd-hdd.py diff --git a/roles/sys-opt-ssd-hdd/handlers/main.yml b/roles/sys-opt-ssd-hdd/handlers/main.yml new file mode 100644 index 00000000..a2a60f6b --- /dev/null +++ b/roles/sys-opt-ssd-hdd/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-opt-ssd-hdd.cymais.service" + systemd: + name: sys-opt-ssd-hdd.cymais.service + state: reloaded + daemon_reload: yes diff --git a/roles/cln-docker-storage-optimizer/meta/main.yml b/roles/sys-opt-ssd-hdd/meta/main.yml similarity index 100% rename from roles/cln-docker-storage-optimizer/meta/main.yml rename to roles/sys-opt-ssd-hdd/meta/main.yml diff --git a/roles/sys-opt-ssd-hdd/tasks/main.yml b/roles/sys-opt-ssd-hdd/tasks/main.yml new file mode 100644 index 00000000..079f7ff0 --- /dev/null +++ b/roles/sys-opt-ssd-hdd/tasks/main.yml @@ -0,0 +1,22 @@ +- name: "create {{storage_optimizer_directory}}" + file: + path: "{{storage_optimizer_directory}}" + state: directory + mode: 0755 + +- name: create sys-opt-ssd-hdd.cymais.service + template: + src: sys-opt-ssd-hdd.service.j2 + dest: /etc/systemd/system/sys-opt-ssd-hdd.cymais.service + notify: reload sys-opt-ssd-hdd.cymais.service + +- name: create sys-opt-ssd-hdd.py + copy: + src: sys-opt-ssd-hdd.py + dest: "{{storage_optimizer_script}}" + mode: 0755 + +- name: "optimize storage performance" + systemd: + name: sys-opt-ssd-hdd.cymais.service + state: started \ No newline at end of file diff --git a/roles/cln-docker-storage-optimizer/templates/cln-docker-storage-optimizer.service.j2 b/roles/sys-opt-ssd-hdd/templates/sys-opt-ssd-hdd.service.j2 similarity index 56% rename from roles/cln-docker-storage-optimizer/templates/cln-docker-storage-optimizer.service.j2 rename to roles/sys-opt-ssd-hdd/templates/sys-opt-ssd-hdd.service.j2 index 64336063..f7f52aa6 100644 --- a/roles/cln-docker-storage-optimizer/templates/cln-docker-storage-optimizer.service.j2 +++ b/roles/sys-opt-ssd-hdd/templates/sys-opt-ssd-hdd.service.j2 @@ -1,8 +1,8 @@ [Unit] Description=Optimize storage paths -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot -ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore cln-docker-storage-optimizer bkp-remote-to-local --timeout "{{system_maintenance_lock_timeout_storage_optimizer}}"' +ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore sys-opt-ssd-hdd svc-sys-bkp-rmt-2-loc --timeout "{{system_maintenance_lock_timeout_storage_optimizer}}"' ExecStart=/bin/sh -c '/usr/bin/python {{storage_optimizer_script}} --rapid-storage-path {{path_rapid_storage}} --mass-storage-path {{path_mass_storage}}' \ No newline at end of file diff --git a/roles/sys-opt-ssd-hdd/vars/main.yml b/roles/sys-opt-ssd-hdd/vars/main.yml new file mode 100644 index 00000000..f1f84943 --- /dev/null +++ b/roles/sys-opt-ssd-hdd/vars/main.yml @@ -0,0 +1,2 @@ +storage_optimizer_directory: '{{path_administrator_scripts}}sys-opt-ssd-hdd/' +storage_optimizer_script: '{{storage_optimizer_directory}}sys-opt-ssd-hdd.py' diff --git a/roles/maint-swapfile/README.md b/roles/sys-opt-swapfile/README.md similarity index 100% rename from roles/maint-swapfile/README.md rename to roles/sys-opt-swapfile/README.md diff --git a/roles/maint-swapfile/meta/main.yml b/roles/sys-opt-swapfile/meta/main.yml similarity index 95% rename from roles/maint-swapfile/meta/main.yml rename to roles/sys-opt-swapfile/meta/main.yml index 8ceee6ba..b899607d 100644 --- a/roles/maint-swapfile/meta/main.yml +++ b/roles/sys-opt-swapfile/meta/main.yml @@ -13,7 +13,7 @@ galaxy_info: - performance repository: "https://github.com/kevinveenbirkenbach/cymais" issue_tracker_url: "https://github.com/kevinveenbirkenbach/cymais/issues" - documentation: "https://github.com/kevinveenbirkenbach/cymais/tree/main/roles/maint-swapfile" + documentation: "https://github.com/kevinveenbirkenbach/cymais/tree/main/roles/sys-opt-swapfile" min_ansible_version: "2.9" platforms: - name: Any diff --git a/roles/maint-swapfile/tasks/main.yml b/roles/sys-opt-swapfile/tasks/main.yml similarity index 100% rename from roles/maint-swapfile/tasks/main.yml rename to roles/sys-opt-swapfile/tasks/main.yml diff --git a/roles/sys-opt-swapfile/vars/main.yml b/roles/sys-opt-swapfile/vars/main.yml new file mode 100644 index 00000000..e69de29b diff --git a/roles/maint-btrfs-auto-balancer/README.md b/roles/sys-rpr-btrfs-blnc/README.md similarity index 94% rename from roles/maint-btrfs-auto-balancer/README.md rename to roles/sys-rpr-btrfs-blnc/README.md index af29560c..9692e45a 100644 --- a/roles/maint-btrfs-auto-balancer/README.md +++ b/roles/sys-rpr-btrfs-blnc/README.md @@ -21,4 +21,4 @@ The primary purpose of this role is to maintain optimal performance of Btrfs fil - **Repository Cloning:** Automatically fetches the latest auto-btrfs-balancer repository. - **Service Configuration:** Sets up a systemd service for running the balancing script. - **Timer Integration:** Schedules the balancing process via a systemd timer. -- **Error Notification:** Notifies on failure using alert-compose. +- **Error Notification:** Notifies on failure using sys-alm-compose. diff --git a/roles/sys-rpr-btrfs-blnc/handlers/main.yml b/roles/sys-rpr-btrfs-blnc/handlers/main.yml new file mode 100644 index 00000000..c1d3554b --- /dev/null +++ b/roles/sys-rpr-btrfs-blnc/handlers/main.yml @@ -0,0 +1,4 @@ +- name: "reload sys-rpr-btrfs-blnc.cymais.service" + systemd: + name: sys-rpr-btrfs-blnc.cymais.service + daemon_reload: yes \ No newline at end of file diff --git a/roles/maint-btrfs-auto-balancer/meta/main.yml b/roles/sys-rpr-btrfs-blnc/meta/main.yml similarity index 97% rename from roles/maint-btrfs-auto-balancer/meta/main.yml rename to roles/sys-rpr-btrfs-blnc/meta/main.yml index 8653abd9..1be69b2b 100644 --- a/roles/maint-btrfs-auto-balancer/meta/main.yml +++ b/roles/sys-rpr-btrfs-blnc/meta/main.yml @@ -22,4 +22,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - alert-compose + - sys-alm-compose diff --git a/roles/maint-btrfs-auto-balancer/tasks/main.yml b/roles/sys-rpr-btrfs-blnc/tasks/main.yml similarity index 69% rename from roles/maint-btrfs-auto-balancer/tasks/main.yml rename to roles/sys-rpr-btrfs-blnc/tasks/main.yml index 6f3850b4..b00a30fe 100644 --- a/roles/maint-btrfs-auto-balancer/tasks/main.yml +++ b/roles/sys-rpr-btrfs-blnc/tasks/main.yml @@ -5,11 +5,11 @@ package_name: btrfs-auto-balancer when: run_once_system_btrfs_auto_balancer is not defined -- name: configure maint-btrfs-auto-balancer.cymais.service +- name: configure sys-rpr-btrfs-blnc.cymais.service template: - src: maint-btrfs-auto-balancer.service.j2 - dest: /etc/systemd/system/maint-btrfs-auto-balancer.cymais.service - notify: reload maint-btrfs-auto-balancer.cymais.service + src: sys-rpr-btrfs-blnc.service.j2 + dest: /etc/systemd/system/sys-rpr-btrfs-blnc.cymais.service + notify: reload sys-rpr-btrfs-blnc.cymais.service when: run_once_system_btrfs_auto_balancer is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -17,9 +17,9 @@ service_name: "{{ role_name }}" when: run_once_system_btrfs_auto_balancer is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_btrfs_auto_balancer}}" when: run_once_system_btrfs_auto_balancer is not defined diff --git a/roles/maint-btrfs-auto-balancer/templates/maint-btrfs-auto-balancer.service.j2 b/roles/sys-rpr-btrfs-blnc/templates/sys-rpr-btrfs-blnc.service.j2 similarity index 71% rename from roles/maint-btrfs-auto-balancer/templates/maint-btrfs-auto-balancer.service.j2 rename to roles/sys-rpr-btrfs-blnc/templates/sys-rpr-btrfs-blnc.service.j2 index 1bb8a49a..0d505651 100644 --- a/roles/maint-btrfs-auto-balancer/templates/maint-btrfs-auto-balancer.service.j2 +++ b/roles/sys-rpr-btrfs-blnc/templates/sys-rpr-btrfs-blnc.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=auto balance btrfs -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/maint-btrfs-auto-balancer/vars/main.yml b/roles/sys-rpr-btrfs-blnc/vars/main.yml similarity index 70% rename from roles/maint-btrfs-auto-balancer/vars/main.yml rename to roles/sys-rpr-btrfs-blnc/vars/main.yml index bee6c35e..5ad8ade0 100644 --- a/roles/maint-btrfs-auto-balancer/vars/main.yml +++ b/roles/sys-rpr-btrfs-blnc/vars/main.yml @@ -1,2 +1,2 @@ system_btrfs_auto_balancer_folder: '{{path_administrator_scripts}}auto-btrfs-balancer/' -application_id: btrfs-auto-balancer + diff --git a/roles/maint-docker-restart/README.md b/roles/sys-rpr-docker-hard/README.md similarity index 100% rename from roles/maint-docker-restart/README.md rename to roles/sys-rpr-docker-hard/README.md diff --git a/roles/maint-docker-restart/files/maint-docker-restart.py b/roles/sys-rpr-docker-hard/files/sys-rpr-docker-hard.py similarity index 100% rename from roles/maint-docker-restart/files/maint-docker-restart.py rename to roles/sys-rpr-docker-hard/files/sys-rpr-docker-hard.py diff --git a/roles/sys-rpr-docker-hard/handlers/main.yml b/roles/sys-rpr-docker-hard/handlers/main.yml new file mode 100644 index 00000000..b552ea3b --- /dev/null +++ b/roles/sys-rpr-docker-hard/handlers/main.yml @@ -0,0 +1,5 @@ +- name: "reload sys-rpr-docker-hard.cymais.service" + systemd: + name: sys-rpr-docker-hard.cymais.service + enabled: yes + daemon_reload: yes diff --git a/roles/maint-docker-restart/meta/main.yml b/roles/sys-rpr-docker-hard/meta/main.yml similarity index 98% rename from roles/maint-docker-restart/meta/main.yml rename to roles/sys-rpr-docker-hard/meta/main.yml index 6f8927e8..08a701aa 100644 --- a/roles/maint-docker-restart/meta/main.yml +++ b/roles/sys-rpr-docker-hard/meta/main.yml @@ -26,4 +26,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - maint-lock \ No newline at end of file + - sys-lock \ No newline at end of file diff --git a/roles/maint-docker-restart/tasks/main.yml b/roles/sys-rpr-docker-hard/tasks/main.yml similarity index 63% rename from roles/maint-docker-restart/tasks/main.yml rename to roles/sys-rpr-docker-hard/tasks/main.yml index e04dc951..a5cda464 100644 --- a/roles/maint-docker-restart/tasks/main.yml +++ b/roles/sys-rpr-docker-hard/tasks/main.yml @@ -7,22 +7,22 @@ - name: create {{restart_docker_script}} copy: - src: maint-docker-restart.py + src: sys-rpr-docker-hard.py dest: "{{restart_docker_script}}" - - name: configure maint-docker-restart.cymais.service + - name: configure sys-rpr-docker-hard.cymais.service template: - src: maint-docker-restart.service.j2 - dest: /etc/systemd/system/maint-docker-restart.cymais.service - notify: "reload maint-docker-restart.cymais.service" + src: sys-rpr-docker-hard.service.j2 + dest: /etc/systemd/system/sys-rpr-docker-hard.cymais.service + notify: "reload sys-rpr-docker-hard.cymais.service" - name: "set 'service_name' to '{{ role_name }}'" set_fact: service_name: "{{ role_name }}" - - name: "include role for gen-timer for {{service_name}}" + - name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_restart_docker}}" diff --git a/roles/maint-docker-restart/templates/maint-docker-restart.service.j2 b/roles/sys-rpr-docker-hard/templates/sys-rpr-docker-hard.service.j2 similarity index 62% rename from roles/maint-docker-restart/templates/maint-docker-restart.service.j2 rename to roles/sys-rpr-docker-hard/templates/sys-rpr-docker-hard.service.j2 index 6bbe66a9..870a7211 100644 --- a/roles/maint-docker-restart/templates/maint-docker-restart.service.j2 +++ b/roles/sys-rpr-docker-hard/templates/sys-rpr-docker-hard.service.j2 @@ -1,8 +1,8 @@ [Unit] Description=Restart Docker Instances -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot -ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{system_maintenance_cleanup_services | join(' ') }} maint-docker-restart --timeout "{{system_maintenance_lock_timeout_restart_docker}}"' +ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{system_maintenance_cleanup_services | join(' ') }} sys-rpr-docker-hard --timeout "{{system_maintenance_lock_timeout_restart_docker}}"' ExecStart=/bin/sh -c '/usr/bin/python {{restart_docker_script}} {{path_docker_compose_instances}}' \ No newline at end of file diff --git a/roles/sys-rpr-docker-hard/vars/main.yml b/roles/sys-rpr-docker-hard/vars/main.yml new file mode 100644 index 00000000..fd4edd35 --- /dev/null +++ b/roles/sys-rpr-docker-hard/vars/main.yml @@ -0,0 +1,3 @@ +restart_docker_folder: '{{path_administrator_scripts}}sys-rpr-docker-hard/' +restart_docker_script: '{{restart_docker_folder}}sys-rpr-docker-hard.py' + diff --git a/roles/maint-docker-heal/README.md b/roles/sys-rpr-docker-soft/README.md similarity index 100% rename from roles/maint-docker-heal/README.md rename to roles/sys-rpr-docker-soft/README.md diff --git a/roles/maint-docker-heal/files/maint-docker-heal.py b/roles/sys-rpr-docker-soft/files/sys-rpr-docker-soft.py similarity index 97% rename from roles/maint-docker-heal/files/maint-docker-heal.py rename to roles/sys-rpr-docker-soft/files/sys-rpr-docker-soft.py index af883d63..1745eea6 100644 --- a/roles/maint-docker-heal/files/maint-docker-heal.py +++ b/roles/sys-rpr-docker-soft/files/sys-rpr-docker-soft.py @@ -40,7 +40,7 @@ def main(base_directory): while blocker_running: try: - bash("systemctl is-active --quiet bkp-docker-to-local.cymais.service") + bash("systemctl is-active --quiet sys-bkp-docker-to-local.cymais.service") bash("systemctl is-active --quiet update-docker.cymais.service") print("Backup is running.") print(f"Trying again in {waiting_time} seconds.") diff --git a/roles/sys-rpr-docker-soft/handlers/main.yml b/roles/sys-rpr-docker-soft/handlers/main.yml new file mode 100644 index 00000000..6305e116 --- /dev/null +++ b/roles/sys-rpr-docker-soft/handlers/main.yml @@ -0,0 +1,5 @@ +- name: restart sys-rpr-docker-soft.cymais.service + systemd: + name: sys-rpr-docker-soft.cymais.service + state: restarted + daemon_reload: yes diff --git a/roles/maint-docker-heal/meta/main.yml b/roles/sys-rpr-docker-soft/meta/main.yml similarity index 97% rename from roles/maint-docker-heal/meta/main.yml rename to roles/sys-rpr-docker-soft/meta/main.yml index bbe6f60b..002abecb 100644 --- a/roles/maint-docker-heal/meta/main.yml +++ b/roles/sys-rpr-docker-soft/meta/main.yml @@ -23,4 +23,4 @@ galaxy_info: issue_tracker_url: https://s.veen.world/cymaisissues documentation: https://s.veen.world/cymais dependencies: - - maint-lock \ No newline at end of file + - sys-lock \ No newline at end of file diff --git a/roles/maint-docker-heal/tasks/main.yml b/roles/sys-rpr-docker-soft/tasks/main.yml similarity index 58% rename from roles/maint-docker-heal/tasks/main.yml rename to roles/sys-rpr-docker-soft/tasks/main.yml index 212f0cac..b47360cf 100644 --- a/roles/maint-docker-heal/tasks/main.yml +++ b/roles/sys-rpr-docker-soft/tasks/main.yml @@ -5,18 +5,18 @@ mode: 0755 when: run_once_heal_docker is not defined -- name: create maint-docker-heal.py +- name: create sys-rpr-docker-soft.py copy: - src: maint-docker-heal.py - dest: "{{heal_docker}}maint-docker-heal.py" - notify: restart maint-docker-heal.cymais.service + src: sys-rpr-docker-soft.py + dest: "{{heal_docker}}sys-rpr-docker-soft.py" + notify: restart sys-rpr-docker-soft.cymais.service when: run_once_heal_docker is not defined -- name: create maint-docker-heal.cymais.service +- name: create sys-rpr-docker-soft.cymais.service template: - src: maint-docker-heal.service.j2 - dest: /etc/systemd/system/maint-docker-heal.cymais.service - notify: restart maint-docker-heal.cymais.service + src: sys-rpr-docker-soft.service.j2 + dest: /etc/systemd/system/sys-rpr-docker-soft.cymais.service + notify: restart sys-rpr-docker-soft.cymais.service when: run_once_heal_docker is not defined - name: "set 'service_name' to '{{ role_name }}'" @@ -24,9 +24,9 @@ service_name: "{{ role_name }}" when: run_once_heal_docker is not defined -- name: "include role for gen-timer for {{service_name}}" +- name: "include role for sys-timer for {{service_name}}" include_role: - name: gen-timer + name: sys-timer vars: on_calendar: "{{on_calendar_heal_docker}}" when: run_once_heal_docker is not defined diff --git a/roles/sys-rpr-docker-soft/templates/sys-rpr-docker-soft.service.j2 b/roles/sys-rpr-docker-soft/templates/sys-rpr-docker-soft.service.j2 new file mode 100644 index 00000000..c6890d06 --- /dev/null +++ b/roles/sys-rpr-docker-soft/templates/sys-rpr-docker-soft.service.j2 @@ -0,0 +1,8 @@ +[Unit] +Description=restart unhealthy docker containers +OnFailure=sys-alm-compose.cymais@%n.service + +[Service] +Type=oneshot +ExecStartPre=/bin/sh -c '/usr/bin/python {{ path_system_lock_script }} {{ system_maintenance_services | join(' ') }} --ignore {{system_maintenance_cleanup_services| join(' ') }} sys-rpr-docker-soft --timeout "{{system_maintenance_lock_timeout_heal_docker}}"' +ExecStart=/bin/sh -c '/bin/python {{heal_docker}}sys-rpr-docker-soft.py {{path_docker_compose_instances}}' \ No newline at end of file diff --git a/roles/sys-rpr-docker-soft/vars/main.yml b/roles/sys-rpr-docker-soft/vars/main.yml new file mode 100644 index 00000000..c2a3ea14 --- /dev/null +++ b/roles/sys-rpr-docker-soft/vars/main.yml @@ -0,0 +1,2 @@ +heal_docker: '{{path_administrator_scripts}}sys-rpr-docker-soft/' + diff --git a/roles/core-daemon/README.md b/roles/sys-rst-daemon/README.md similarity index 100% rename from roles/core-daemon/README.md rename to roles/sys-rst-daemon/README.md diff --git a/roles/core-daemon/meta/main.yml b/roles/sys-rst-daemon/meta/main.yml similarity index 96% rename from roles/core-daemon/meta/main.yml rename to roles/sys-rst-daemon/meta/main.yml index f6bb5cbf..af973107 100644 --- a/roles/core-daemon/meta/main.yml +++ b/roles/sys-rst-daemon/meta/main.yml @@ -14,6 +14,6 @@ galaxy_info: - cymais repository: "https://github.com/kevinveenbirkenbach/cymais" issue_tracker_url: "https://github.com/kevinveenbirkenbach/cymais/issues" - documentation: "https://github.com/kevinveenbirkenbach/cymais/#core-daemon-role" + documentation: "https://github.com/kevinveenbirkenbach/cymais/#sys-rst-daemon-role" dependencies: [] diff --git a/roles/core-daemon/tasks/main.yml b/roles/sys-rst-daemon/tasks/main.yml similarity index 100% rename from roles/core-daemon/tasks/main.yml rename to roles/sys-rst-daemon/tasks/main.yml diff --git a/roles/core-daemon/tasks/reset.yml b/roles/sys-rst-daemon/tasks/reset.yml similarity index 100% rename from roles/core-daemon/tasks/reset.yml rename to roles/sys-rst-daemon/tasks/reset.yml diff --git a/roles/core-sudo/README.md b/roles/sys-sudo/README.md similarity index 100% rename from roles/core-sudo/README.md rename to roles/sys-sudo/README.md diff --git a/roles/core-sudo/files/sudoers b/roles/sys-sudo/files/sudoers similarity index 100% rename from roles/core-sudo/files/sudoers rename to roles/sys-sudo/files/sudoers diff --git a/roles/core-sudo/meta/main.yml b/roles/sys-sudo/meta/main.yml similarity index 100% rename from roles/core-sudo/meta/main.yml rename to roles/sys-sudo/meta/main.yml diff --git a/roles/core-sudo/tasks/main.yml b/roles/sys-sudo/tasks/main.yml similarity index 100% rename from roles/core-sudo/tasks/main.yml rename to roles/sys-sudo/tasks/main.yml diff --git a/roles/core-journalctl/README.md b/roles/sys-svc-journalctl/README.md similarity index 88% rename from roles/core-journalctl/README.md rename to roles/sys-svc-journalctl/README.md index b8e4d762..62dfa248 100644 --- a/roles/core-journalctl/README.md +++ b/roles/sys-svc-journalctl/README.md @@ -22,11 +22,11 @@ This Ansible role manages the configuration of `systemd-journald` on target host - Customizable retention and runtime limits - Seamless restarts on config update -- Integration with `mon-bot-journalctl` for downstream monitoring +- Integration with `sys-hlth-journalctl` for downstream monitoring ## Usage ```yaml - hosts: all roles: - - role: core-journalctl + - role: sys-svc-journalctl diff --git a/roles/core-journalctl/handlers/main.yml b/roles/sys-svc-journalctl/handlers/main.yml similarity index 100% rename from roles/core-journalctl/handlers/main.yml rename to roles/sys-svc-journalctl/handlers/main.yml diff --git a/roles/core-journalctl/meta/main.yml b/roles/sys-svc-journalctl/meta/main.yml similarity index 92% rename from roles/core-journalctl/meta/main.yml rename to roles/sys-svc-journalctl/meta/main.yml index 17402750..f51da010 100644 --- a/roles/core-journalctl/meta/main.yml +++ b/roles/sys-svc-journalctl/meta/main.yml @@ -14,7 +14,7 @@ galaxy_info: - journald repository: "https://github.com/kevinveenbirkenbach/cymais" issue_tracker_url: "https://github.com/kevinveenbirkenbach/cymais/issues" - documentation: "https://github.com/kevinveenbirkenbach/cymais/roles/core-journalctl" + documentation: "https://github.com/kevinveenbirkenbach/cymais/roles/sys-svc-journalctl" run_after: [] dependencies: - - mon-bot-journalctl + - sys-hlth-journalctl diff --git a/roles/core-journalctl/tasks/main.yml b/roles/sys-svc-journalctl/tasks/main.yml similarity index 100% rename from roles/core-journalctl/tasks/main.yml rename to roles/sys-svc-journalctl/tasks/main.yml diff --git a/roles/core-journalctl/templates/journald.conf.j2 b/roles/sys-svc-journalctl/templates/journald.conf.j2 similarity index 100% rename from roles/core-journalctl/templates/journald.conf.j2 rename to roles/sys-svc-journalctl/templates/journald.conf.j2 diff --git a/roles/gen-msmtp/README.md b/roles/sys-svc-msmtp/README.md similarity index 100% rename from roles/gen-msmtp/README.md rename to roles/sys-svc-msmtp/README.md diff --git a/roles/gen-msmtp/meta/main.yml b/roles/sys-svc-msmtp/meta/main.yml similarity index 97% rename from roles/gen-msmtp/meta/main.yml rename to roles/sys-svc-msmtp/meta/main.yml index 245bbc0a..6587d539 100644 --- a/roles/gen-msmtp/meta/main.yml +++ b/roles/sys-svc-msmtp/meta/main.yml @@ -22,4 +22,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - mon-bot-msmtp + - sys-hlth-msmtp diff --git a/roles/gen-msmtp/tasks/main.yml b/roles/sys-svc-msmtp/tasks/main.yml similarity index 100% rename from roles/gen-msmtp/tasks/main.yml rename to roles/sys-svc-msmtp/tasks/main.yml diff --git a/roles/gen-msmtp/templates/msmtprc.conf.j2 b/roles/sys-svc-msmtp/templates/msmtprc.conf.j2 similarity index 100% rename from roles/gen-msmtp/templates/msmtprc.conf.j2 rename to roles/sys-svc-msmtp/templates/msmtprc.conf.j2 diff --git a/roles/core-sshd/README.md b/roles/sys-svc-sshd/README.md similarity index 100% rename from roles/core-sshd/README.md rename to roles/sys-svc-sshd/README.md diff --git a/roles/core-sshd/handlers/main.yml b/roles/sys-svc-sshd/handlers/main.yml similarity index 100% rename from roles/core-sshd/handlers/main.yml rename to roles/sys-svc-sshd/handlers/main.yml diff --git a/roles/core-sshd/meta/main.yml b/roles/sys-svc-sshd/meta/main.yml similarity index 100% rename from roles/core-sshd/meta/main.yml rename to roles/sys-svc-sshd/meta/main.yml diff --git a/roles/core-sshd/tasks/main.yml b/roles/sys-svc-sshd/tasks/main.yml similarity index 100% rename from roles/core-sshd/tasks/main.yml rename to roles/sys-svc-sshd/tasks/main.yml diff --git a/roles/core-sshd/templates/sshd_config.j2 b/roles/sys-svc-sshd/templates/sshd_config.j2 similarity index 100% rename from roles/core-sshd/templates/sshd_config.j2 rename to roles/sys-svc-sshd/templates/sshd_config.j2 diff --git a/roles/gen-timer/README.md b/roles/sys-timer/README.md similarity index 100% rename from roles/gen-timer/README.md rename to roles/sys-timer/README.md diff --git a/roles/gen-timer/meta/main.yml b/roles/sys-timer/meta/main.yml similarity index 100% rename from roles/gen-timer/meta/main.yml rename to roles/sys-timer/meta/main.yml diff --git a/roles/gen-timer/tasks/main.yml b/roles/sys-timer/tasks/main.yml similarity index 100% rename from roles/gen-timer/tasks/main.yml rename to roles/sys-timer/tasks/main.yml diff --git a/roles/gen-timer/tasks/reset.yml b/roles/sys-timer/tasks/reset.yml similarity index 100% rename from roles/gen-timer/tasks/reset.yml rename to roles/sys-timer/tasks/reset.yml diff --git a/roles/gen-timer/templates/dummy.timer.j2 b/roles/sys-timer/templates/dummy.timer.j2 similarity index 100% rename from roles/gen-timer/templates/dummy.timer.j2 rename to roles/sys-timer/templates/dummy.timer.j2 diff --git a/roles/update/meta/main.yml b/roles/update-compose/meta/main.yml similarity index 100% rename from roles/update/meta/main.yml rename to roles/update-compose/meta/main.yml diff --git a/roles/update/tasks/README.md b/roles/update-compose/tasks/README.md similarity index 100% rename from roles/update/tasks/README.md rename to roles/update-compose/tasks/README.md diff --git a/roles/update/tasks/main.yml b/roles/update-compose/tasks/main.yml similarity index 100% rename from roles/update/tasks/main.yml rename to roles/update-compose/tasks/main.yml diff --git a/roles/update-docker/meta/main.yml b/roles/update-docker/meta/main.yml index e30b6613..6ecc76b4 100644 --- a/roles/update-docker/meta/main.yml +++ b/roles/update-docker/meta/main.yml @@ -27,4 +27,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - maint-lock + - sys-lock diff --git a/roles/update-docker/tasks/main.yml b/roles/update-docker/tasks/main.yml index 5da0f739..765062fc 100644 --- a/roles/update-docker/tasks/main.yml +++ b/roles/update-docker/tasks/main.yml @@ -1,6 +1,6 @@ -- name: "start bkp-docker-to-local-everything.cymais.service" +- name: "start sys-bkp-docker-to-local-everything.cymais.service" systemd: - name: bkp-docker-to-local-everything.cymais.service + name: sys-bkp-docker-to-local-everything.cymais.service state: started when: mode_backup | bool diff --git a/roles/update-docker/templates/update-docker.service.j2 b/roles/update-docker/templates/update-docker.service.j2 index b6f0afe8..3c9c907a 100644 --- a/roles/update-docker/templates/update-docker.service.j2 +++ b/roles/update-docker/templates/update-docker.service.j2 @@ -1,6 +1,6 @@ [Unit] Description=Updates Docker Instances -OnFailure=alert-compose.cymais@%n.service +OnFailure=sys-alm-compose.cymais@%n.service [Service] Type=oneshot diff --git a/roles/user-administrator/meta/main.yml b/roles/user-administrator/meta/main.yml index 937b3e15..705f57be 100644 --- a/roles/user-administrator/meta/main.yml +++ b/roles/user-administrator/meta/main.yml @@ -24,4 +24,4 @@ galaxy_info: issue_tracker_url: "https://s.veen.world/cymaisissues" documentation: "https://s.veen.world/cymais" dependencies: - - core-sudo \ No newline at end of file + - sys-sudo \ No newline at end of file diff --git a/roles/web-app-bigbluebutton/tasks/main.yml b/roles/web-app-bigbluebutton/tasks/main.yml index 2a11784a..2e70aa21 100644 --- a/roles/web-app-bigbluebutton/tasks/main.yml +++ b/roles/web-app-bigbluebutton/tasks/main.yml @@ -10,7 +10,7 @@ database_name: "" # Multiple databases - name: "Seed BigBlueButton Database for Backup" - include_tasks: "{{ playbook_dir }}/roles/bkp-docker-to-local/tasks/seed-database-to-backup.yml" + include_tasks: "{{ playbook_dir }}/roles/sys-bkp-docker-to-local/tasks/seed-database-to-backup.yml" vars: database_instance: "{{ application_id }}" database_password: "{{ applications[application_id].credentials.postgresql_secret }}" diff --git a/roles/web-app-matrix/tasks/create-and-seed-database.yml b/roles/web-app-matrix/tasks/create-and-seed-database.yml index d17eb251..777c7a7b 100644 --- a/roles/web-app-matrix/tasks/create-and-seed-database.yml +++ b/roles/web-app-matrix/tasks/create-and-seed-database.yml @@ -10,4 +10,4 @@ when: applications | is_feature_enabled('central_database',application_id) - name: "include seed-database-to-backup.yml" - include_tasks: "{{ playbook_dir }}/roles/bkp-docker-to-local/tasks/seed-database-to-backup.yml" \ No newline at end of file + include_tasks: "{{ playbook_dir }}/roles/sys-bkp-docker-to-local/tasks/seed-database-to-backup.yml" \ No newline at end of file diff --git a/roles/web-app-nextcloud/docs/Update.md b/roles/web-app-nextcloud/docs/Update.md index 3256f78d..1f8d2c11 100644 --- a/roles/web-app-nextcloud/docs/Update.md +++ b/roles/web-app-nextcloud/docs/Update.md @@ -43,8 +43,8 @@ and disable any non-functioning apps. ```bash cd {{path_docker_compose_instances}}nextcloud && docker-compose down && -docker-compose exec -i database mysql -u nextcloud -pPASSWORT nextcloud < "/Backups/$(sha256sum /etc/machine-id | head -c 64)/bkp-docker-to-local/latest/nextcloud_database/sql/backup.sql" && -cd {{path_administrator_scripts}}bkp-docker-to-local && +docker-compose exec -i database mysql -u nextcloud -pPASSWORT nextcloud < "/Backups/$(sha256sum /etc/machine-id | head -c 64)/sys-bkp-docker-to-local/latest/nextcloud_database/sql/backup.sql" && +cd {{path_administrator_scripts}}sys-bkp-docker-to-local && bash ./recover-web-app-from-local.sh "nextcloud_data" "$(sha256sum /etc/machine-id | head -c 64)" ``` diff --git a/roles/web-app-wordpress/tasks/main.yml b/roles/web-app-wordpress/tasks/main.yml index a9b67a49..6eb635ea 100644 --- a/roles/web-app-wordpress/tasks/main.yml +++ b/roles/web-app-wordpress/tasks/main.yml @@ -21,7 +21,7 @@ - name: "Transfering msmtprc to {{ host_msmtp_conf }}" template: - src: "{{ playbook_dir }}/roles/gen-msmtp/templates/msmtprc.conf.j2" + src: "{{ playbook_dir }}/roles/sys-svc-msmtp/templates/msmtprc.conf.j2" dest: "{{ host_msmtp_conf }}" notify: docker compose up diff --git a/tasks/stages/01_constructor.yml b/tasks/stages/01_constructor.yml index bb46d74b..d1644395 100644 --- a/tasks/stages/01_constructor.yml +++ b/tasks/stages/01_constructor.yml @@ -98,7 +98,7 @@ - name: update device include_role: - name: update + name: update-compose when: mode_update | bool - name: "Load base roles" @@ -108,11 +108,8 @@ - drv - gen - net - - alert - mon - maint - update - - bkp - - cln loop_control: label: "{{ item }}-roles.yml" \ No newline at end of file diff --git a/tasks/stages/02_server.yml b/tasks/stages/02_server.yml index 3f8e7dae..57f00c74 100644 --- a/tasks/stages/02_server.yml +++ b/tasks/stages/02_server.yml @@ -3,12 +3,12 @@ include_role: name: "{{ item }}" loop: - - core-security - - core-journalctl - - mon-bot-disc-space - - cln-disc-space - - mon-bot-btrfs - - maint-btrfs-auto-balancer + - sys-svc-sshd + - sys-svc-journalctl + - sys-hlth-disc-space + - sys-cln-disc-space + - sys-hlth-btrfs + - sys-rpr-btrfs-blnc - name: "Include server roles" include_tasks: "./tasks/groups/{{ item }}-roles.yml" diff --git a/tests/integration/test_no_application_id.py b/tests/integration/test_no_application_id.py new file mode 100644 index 00000000..3356af6b --- /dev/null +++ b/tests/integration/test_no_application_id.py @@ -0,0 +1,25 @@ +# tests/integration/test_no_application_id.py +import unittest +import yaml +import glob +import os + +BASE_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "..")) +test_files = glob.glob(os.path.join(BASE_DIR, "roles/sys-*/vars/main.yml")) + +class TestNoApplicationId(unittest.TestCase): + """ + Ensure that no sys-* role main.yml defines an application_id variable. + """ + def test_no_application_id_defined(self): + for file_path in test_files: + with open(file_path, 'r') as f: + content = yaml.safe_load(f) or {} + + self.assertNotIn( + 'application_id', content, + f"Unexpected 'application_id' defined in {file_path}" + ) + +if __name__ == '__main__': + unittest.main() diff --git a/tests/unit/roles/sys-opt-ssd-hdd/__init__.py b/tests/unit/roles/sys-opt-ssd-hdd/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/tests/unit/roles/cln-docker-storage-optimizer/test_storage_optimizer.py b/tests/unit/roles/sys-opt-ssd-hdd/test_storage_optimizer.py similarity index 94% rename from tests/unit/roles/cln-docker-storage-optimizer/test_storage_optimizer.py rename to tests/unit/roles/sys-opt-ssd-hdd/test_storage_optimizer.py index 4a27622b..6ce9bcd1 100644 --- a/tests/unit/roles/cln-docker-storage-optimizer/test_storage_optimizer.py +++ b/tests/unit/roles/sys-opt-ssd-hdd/test_storage_optimizer.py @@ -8,7 +8,7 @@ import sys def load_optimizer_module(): module_path = os.path.abspath(os.path.join( os.path.dirname(__file__), - '..', "..", "..","..",'roles', 'cln-docker-storage-optimizer', 'files', 'cln-docker-storage-optimizer.py' + '..', "..", "..","..",'roles', 'sys-opt-ssd-hdd', 'files', 'sys-opt-ssd-hdd.py' )) spec = importlib.util.spec_from_file_location('storage_optimizer', module_path) optimizer = importlib.util.module_from_spec(spec)