: add nsd role

This commit is contained in:
VC
2024-07-05 11:53:53 +02:00
parent 192bf6dfcd
commit 5217036f14
20 changed files with 484 additions and 2 deletions

28
roles/nsd/tasks/zones.yml Normal file
View File

@@ -0,0 +1,28 @@
---
- name: Create zone file
ansible.builtin.template:
src: "{{ 'zones/parking.zone.j2' if item.parking | default(false) else 'zones/' ~ item.name ~ '.zone.j2' }}"
dest: "{{ nsd_default_etc_path }}zones/{{ item.name }}.zone"
owner: root
group: root
mode: "0644"
vars:
# This generates 99 different serial per day
dns_serial: "{{ ansible_date_time.year }}{{ ansible_date_time.month }}{{ ansible_date_time.day }}{{ ((ansible_date_time.hour | int * 3600 + ansible_date_time.minute | int * 60 + ansible_date_time.second | int) * 99 / 86400) | int }}"
- name: Force zone file modification time
ansible.builtin.file:
path: "{{ nsd_default_etc_path }}zones/{{ item.name }}.zone"
state: touch
mode: "0644"
- name: Check zone file
ansible.builtin.command:
cmd: "nsd-checkzone {{ item.name }} {{ nsd_default_etc_path }}zones/{{ item.name }}.zone"
changed_when: false
- name: Reload zone
ansible.builtin.command:
cmd: "nsd-control reload {{ item.name }}"
changed_when: false