mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-12-08 10:26:35 +00:00
- Introduce global IS_CONTAINER flag based on ansible_virtualization facts - Skip systemd-based handlers and tasks when running inside containers - Extend EXCLUDED_ROLES list in GitHub Actions test-deploy workflow - Ensure docker.sock is mounted for all CI deploy stages - Improve sys-svc-docker by suppressing service restarts inside containers - Add meta: flush_handlers to properly trigger delayed docker restarts - Update sys-service handlers with container guards - Update sys-timer tasks to avoid systemctl inside CI containers - Enhance drv-non-free role with Manjaro detection and mhwd fallback warning - Skip swapfile generation in containers - Minor service template fixes and cleanup in proxy.conf.j2 Details and discussion: https://chatgpt.com/share/6930a4ca-56f4-800f-9b3d-4791f040a03b
Systemd Timer
Description
This role configures a systemd timer to periodically start a corresponding service. It uses a Jinja2 template to create a timer unit file that specifies the scheduling parameters (such as OnCalendar and RandomizedDelaySec) and then restarts the timer service accordingly.
Overview
Optimized for automated task scheduling in a systemd environment, this role:
- Generates a timer unit file for a given service (using the
system_service_timer_servicevariable). - Reloads and restarts the timer using systemd to ensure that changes take effect.
- Supports dynamic configuration of scheduling parameters via variables like
system_service_on_calendarandRANDOMIZED_DELAY_SEC.
Purpose
The primary purpose of this role is to provide a reusable mechanism for scheduling recurring tasks on a system. By creating and managing a systemd timer unit, the role ensures that specified services are automatically started at defined intervals, enhancing system automation and reliability.
Features
- Dynamic Timer Configuration: Uses a Jinja2 template to create a timer unit file based on provided variables.
- Automated Service Management: Automatically reloads the systemd daemon and restarts the timer when changes are detected.
- Flexible Scheduling: Supports configuration of parameters such as OnCalendar and RandomizedDelaySec for precise control over task timing.
- Persistent Timers: Optionally enables persistent timer behavior to ensure missed activations are handled.