From e3130fc80d539487f25f8762f0e3121e56106b95 Mon Sep 17 00:00:00 2001 From: VC Date: Thu, 3 Apr 2025 09:00:39 +0200 Subject: [PATCH] test: to be rebased --- roles/nsd/tasks/zones.yml | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/roles/nsd/tasks/zones.yml b/roles/nsd/tasks/zones.yml index 6c92505..17eb521 100644 --- a/roles/nsd/tasks/zones.yml +++ b/roles/nsd/tasks/zones.yml @@ -11,8 +11,13 @@ dns_serial: "{{ ansible_date_time.epoch }}" web_hostname_block: |- {% for webserver in groups['webservers'] | sort -%} - {% for web_hostname in (hostvars[webserver]['web_hostname'] | selectattr('host', 'match', '.+' ~ item.name) | sort(attribute='host')) -%} - {{ web_hostname.host | regex_replace('\.' ~ item.name ~ '$', '') }} IN CNAME {{ hostvars[webserver].ansible_host }}. + {% for web_hostname in (hostvars[webserver]['web_hostname'] | selectattr('host', 'match', item.name) | map(attribute='host') | sort) -%} + {% if web_hostname | match((\S+\.){2}) %} + @ IN A {{ global_public_ip_address }} + @ IN AAAA {{ hostvars[webserver].proxmox_net0.ip6 | default(hostvars[webserver].ansible_default_ipv4.address) | ansible.utils.ipaddr('address') }} + {% else %} + {{ web_hostname | regex_replace('\.' ~ item.name ~ '$', '') }} IN CNAME {{ webserver }}. + {% endif %} {% endfor %} {% endfor %}