; -*- mode: dns; -*- ; {{ ansible_managed }} {% set hostmaster = "hostmaster." + network.domain %} $ORIGIN {{ domain }}. $TTL {{ dns.ttl }} @ IN SOA {{ nameservers[0].ns[0] }}. {{ hostmaster }}. ( {{ domain | next_serial }} ; serial number {{ dns.refresh }} ; refresh {{ dns.retry }} ; retry {{ dns.expire }} ; expire {{ dns.minimum }} ; minimum ) {% for server in nameservers %} {% for ns in server.ns %} @ IN NS {{ ns }}. ; {{ server.name }} {% endfor %} {% endfor %} @ IN A {{ network.ipv4.address }} @ IN AAAA {{ network.ipv6.address }} {% set subdomains = [] %} {% for name in domains -%} {%- if name["name"] == domain -%} {%- for sub in name["sub"] -%} {{ subdomains.append(sub) }} {%- endfor -%} {%- endif -%} {%- endfor %} {% for name in subdomains %} {{ name }} IN CNAME @ {% endfor %} * IN CNAME @ ; vim: set ft=bindzone: