Kevin Veen-Birkenbach 7ad14673e1
sys-service: add ExecStartPost support and adjust health/repair roles
- extended generic systemctl template to support ExecStartPost
- health-docker-volumes: run main script with whitelist, trigger both compose alarm and cleanup on failure
- repair-docker-hard: added ExecStartPre lock, ExecStart, and ExecStartPost to trigger compose alarm always, plus cleanup on failure
- removed obsolete role-specific systemctl.service.j2 templates
- improved consistency across vars and defaults

See: https://chatgpt.com/share/68ad6cb8-c164-800f-96b6-a45c6c7779b3
2025-08-26 10:15:35 +02:00

18 lines
637 B
Django/Jinja

[Unit]
Description={{ SOFTWARE_NAME }} - Service for role '{{ system_service_id }}'
{{- system_service_tpl_on_failure | systemd_directive('OnFailure') }}
StartLimitIntervalSec=60
StartLimitBurst=3
OnFailureJobMode=replace-irreversibly
[Service]
Type={{ system_service_tpl_type }}
{% for key, val in [
('TimeoutStartSec', system_service_tpl_timeout_start_sec),
('ExecStartPre', system_service_tpl_exec_start_pre),
('ExecStart', system_service_tpl_exec_start),
('ExecStartPost', system_service_tpl_exec_start_post),
('RuntimeMaxSec', system_service_tpl_runtime),
] %}
{{ val | systemd_directive(key) }}
{% endfor %}