computer-playbook/roles/sys-dns-cloudflare-records
Kevin Veen-Birkenbach a10dd402b8
refactor: improve service handling and introduce MODE_ASSERT
- Improved get_service_name filter plugin (clearer suffix handling, consistent var names).
- Added MODE_ASSERT flag to optionally execute validation/assertion tasks.
- Fixed systemd unit handling: consistent use of %I instead of %i, correct escaping of instance names.
- Unified on_failure behavior and alarm composer scripts.
- Cleaned up redundant logging, handlers, and debug config.
- Strengthened sys-service template resolution with assert (only active when MODE_ASSERT).
- Simplified timer and suffix handling with get_service_name filter.
- Hardened sensitive tasks with no_log.
- Added conditional asserts across roles (Keycloak, DNS, Mailu, Discourse, etc.).

These changes improve consistency, safety, and validation across the automation stack.

Conversation: https://chatgpt.com/share/68a4ae28-483c-800f-b2f7-f64c7124c274
2025-08-19 19:02:52 +02:00
..

🌐 Cloudflare DNS Records

Description

Generic, data-driven role to manage DNS records on Cloudflare (A/AAAA, CNAME, MX, TXT, SRV).
Designed for reuse across apps (e.g., Mailu) and environments.

Overview

This role wraps community.general.cloudflare_dns and applies records from a single structured variable (cloudflare_records). It supports async operations and can be used to provision all required records for a service in one task.

Features

  • Data-driven input for multiple record types
  • Supports A/AAAA, CNAME, MX, TXT, SRV
  • Optional async execution
  • Minimal logging of secrets

Further Resources