ansible/roles/nsd/tasks/main.yml

85 lines
1.8 KiB
YAML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
- name: Install nsd
package:
name: nsd
state: present
- name: Add /var/log/nsd to fstab
mount:
path: /var/log/nsd
src: tmpfs
fstype: tmpfs
opts: 'rw,size={{ nsd_log_size }},mode={{ nsd_log_mode }},uid={{ nsd_log_uid }},gid={{ nsd_log_gid }},late'
state: mounted
- name: Create nsd service directories
file:
path: '{{ s6_etc_dir }}/service/{{ item }}'
state: directory
owner: root
group: wheel
mode: 0755
with_items: '{{ nsd_service_dirs }}'
notify:
- Reload s6-rc
- Restart nsd log
- Restart nsd
- name: Generate nsd service scripts
template:
dest: '{{ s6_etc_dir }}/service/{{ item }}'
src: '{{ item }}.j2'
mode: 0555
owner: root
group: wheel
with_items: '{{ nsd_service_scripts }}'
notify:
- Reload s6-rc
- Restart nsd log
- Restart nsd
- name: Generate nsd service configuration
copy:
dest: '{{ s6_etc_dir }}/service/{{ item.name }}'
content: '{{ item.content }}'
mode: 0444
owner: root
group: wheel
loop_control:
label: '{{ item.name }} = {{ item.content }}'
notify:
- Reload s6-rc
- Restart nsd log
- Restart nsd
with_items: '{{ nsd_service_config }}'
- name: Configure nsd
template:
dest: /usr/local/etc/nsd/nsd.conf
src: nsd.conf.j2
mode: 0444
owner: root
group: wheel
notify:
- Reload nsd
- name: Flush handlers
meta: flush_handlers
- name: Start nsd
command: fdmove -c 2 1 s6-rc -l {{ s6_live_dir }} -u -v 2 -t 15000 change nsd
register: change
changed_when: change.stdout | length > 0
- name: Enable nsd
lineinfile:
path: '{{ s6_etc_dir }}/service/enabled/contents'
regexp: "^nsd$"
line: nsd
state: present
notify:
- Reload s6-rc
- name: Flush handlers (again)
meta: flush_handlers