|
|
|
---
|
|
|
|
|
|
|
|
- name: Create zone directories
|
|
|
|
file:
|
|
|
|
path: "{{ item }}"
|
|
|
|
state: directory
|
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
mode: "u=rwx,g=rx"
|
|
|
|
loop:
|
|
|
|
- "{{ domain_directory }}"
|
|
|
|
- "{{ domain_environment_directory }}"
|
|
|
|
|
|
|
|
- name: Upload makefile to domain zone configuration environment
|
|
|
|
template:
|
|
|
|
src: zone.makefile
|
|
|
|
dest: "{{ domain_environment_directory }}/makefile"
|
|
|
|
owner: root
|
|
|
|
group: root
|
|
|
|
mode: "u=rw,g=r,o=r"
|
|
|
|
|
|
|
|
- name: Create link in domain zone configuration environment
|
|
|
|
file:
|
|
|
|
state: link
|
|
|
|
src: "{{ domain_directory }}"
|
|
|
|
dest: "{{ domain_environment_link }}"
|
|
|
|
|
|
|
|
- name: Determine if keys are generated already
|
|
|
|
find:
|
|
|
|
paths: "{{ domain_directory }}"
|
|
|
|
patterns: "K{{ domain }}.+*+*"
|
|
|
|
register: keys_found
|
|
|
|
|
|
|
|
- name: Generate keys for zone {{ domain }}
|
|
|
|
include_tasks: generate_keys.yml
|
|
|
|
when: keys_found.matched < 2
|
|
|
|
|
|
|
|
- name: Find generated public keys
|
|
|
|
find:
|
|
|
|
paths: "{{ domain_directory }}"
|
|
|
|
patterns: "K{{ domain }}.+*+*.key"
|
|
|
|
register: keys_list
|
|
|
|
|
|
|
|
- name: Store main database of zone {{ domain }}
|
|
|
|
template:
|
|
|
|
src: zone.db
|
|
|
|
dest: "{{ domain_environment_directory }}/0_main.db"
|
|
|
|
owner: root
|
|
|
|
group: "{{ dns_user }}"
|
|
|
|
mode: "u=rw,g=r,o=r"
|
|
|
|
validate: "named-checkzone {{ domain }} %s"
|
|
|
|
notify: reconfigure zone {{ domain }}
|
|
|
|
|
|
|
|
- name: Configure zone {{ domain }}
|
|
|
|
template:
|
|
|
|
src: zone.conf
|
|
|
|
dest: "{{ configuration_file }}"
|
|
|
|
owner: root
|
|
|
|
group: "{{ dns_user }}"
|
|
|
|
mode: "u=rw,g=r,o=r"
|
|
|
|
validate: "named-checkconf %s"
|
|
|
|
notify: reload bind9
|
|
|
|
|
|
|
|
- name: Include configuration file of zone {{ domain }}
|
|
|
|
lineinfile:
|
|
|
|
path: "{{ zones_configuration }}"
|
|
|
|
state: present
|
|
|
|
line: "include \"{{ configuration_file }}\";"
|
|
|
|
validate: "named-checkconf %s"
|
|
|
|
notify: reload bind9
|
|
|
|
|
|
|
|
- meta: flush_handlers
|