infrastructure/ansible/roles/docker/tasks/pihole.yml
2020-03-17 21:11:02 +00:00

48 lines
1.2 KiB
YAML

- name: Include pihole variables
include_vars: pihole.yml
- name: Create pihole directory
file:
path: '/opt/pihole'
state: directory
owner: "{{ docker_user.name }}"
mode: "{{ docker_compose_directory_mask }}"
become: true
- name: Install pihole compose file
template:
src: files/pihole/docker-compose.yml
dest: "/opt/pihole/docker-compose.yml"
mode: "{{ docker_compose_file_mask }}"
owner: "{{ docker_user.name }}"
validate: /usr/bin/docker-compose -f %s config
register: compose_file
become: true
- name: Create dnsmasq directory
file:
path: '/opt/pihole/dnsmasq.d/'
state: directory
mode: "{{ docker_compose_directory_mask }}"
become: true
- name: Install dnsmasq hosts config
template:
src: files/pihole/dnsmasq-vpn.conf
dest: "/opt/pihole/dnsmasq.d/02-vpn.conf"
mode: "{{ docker_compose_file_mask }}"
owner: "{{ docker_user.name }}"
register: dnsmasq_vpn_hosts
become: true
- name: Cycle pihole container
docker_compose:
project_src: /opt/pihole
pull: true
remove_orphans: true
remove_volumes: true
state: "{{ item }}"
when: compose_file.changed or dnsmasq_vpn_hosts.changed
loop:
- absent
- present