Skip to content
Snippets Groups Projects
main.yml 1.2 KiB
Newer Older
nd's avatar
nd committed
---
- name: install powerdns
  apt:
    pkg:
      - pdns-server
      - pdns-backend-bind
nd's avatar
nd committed
  notify:
  - delete pdns bind.conf
nd's avatar
nd committed

- name: delete debian defaults
  file:
    path: /etc/powerdns/named.conf
    state: absent

nd's avatar
nd committed
- name: copy powerdns config
  template:
    src: pdns.conf.j2
    dest: /etc/powerdns/pdns.conf
  notify:
  - restart powerdns

- name: create folders
  file:
    path: "{{ item.path }}"
nd's avatar
nd committed
    state: directory
    owner: "{{ item.owner|d('pdns') }}"
    group: "{{ item.group|d('pdns') }}"
    mode: "{{ item.mode|d('0755') }}"
nd's avatar
nd committed
  with_items:
  - { "path": "/var/lib/powerdns/tpl/" }
  - { "path": "/var/lib/powerdns/zones/" }
  - { "path": "/etc/powerdns/pdns.d/" }
  - { "path": "/etc/powerdns/backends/" }

- name: copy powerdns bind backend config
  template:
    src: backend-bind.conf.j2
    dest: /etc/powerdns/backends/bind.conf
  notify:
  - restart powerdns
nd's avatar
nd committed

- name: create bind zonefile templates
nd's avatar
nd committed
  template:
    src: zonefile.db.j2
    dest: "/var/lib/powerdns/tpl/{{ item }}"
  with_items: "{{ powerdns.zones.keys()|list }}"
nd's avatar
nd committed
  register: zonefilestask
  notify:
  - copy bind zone file
  - set bind zone serial
  - reload changed bind zones
nd's avatar
nd committed
  - purge cache
  - notify slaves