54 lines
1.4 KiB
YAML
54 lines
1.4 KiB
YAML
- name: Include dnsmasq variables
|
|
include_vars: dnsmasq.yml
|
|
|
|
- name: Create dnsmasq directory
|
|
file:
|
|
path: '/opt/dnsmasq'
|
|
state: directory
|
|
owner: "{{ docker_user.name }}"
|
|
mode: "{{ docker_compose_directory_mask }}"
|
|
become: true
|
|
become_user: root
|
|
|
|
- name: Install dnsmasq compose file
|
|
template:
|
|
src: files/dnsmasq/docker-compose.yml
|
|
dest: "/opt/dnsmasq/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
|
|
become_user: root
|
|
|
|
- name: Install dnsmasq config
|
|
template:
|
|
src: files/dnsmasq/dnsmasq.conf
|
|
dest: "/opt/dnsmasq/dnsmasq.conf"
|
|
mode: "{{ docker_compose_file_mask }}"
|
|
owner: "{{ docker_user.name }}"
|
|
register: dnsmasq_config
|
|
become: true
|
|
become_user: root
|
|
|
|
- name: Install dnsmasq vpn hosts
|
|
template:
|
|
src: files/dnsmasq/vpn-hosts.conf
|
|
dest: "/opt/dnsmasq/vpn-hosts.conf"
|
|
mode: "{{ docker_compose_file_mask }}"
|
|
owner: "{{ docker_user.name }}"
|
|
register: dnsmasq_vpn_hosts
|
|
become: true
|
|
become_user: root
|
|
|
|
- name: Cycle dnsmasq container
|
|
docker_compose:
|
|
project_src: /opt/dnsmasq
|
|
pull: true
|
|
remove_orphans: true
|
|
remove_volumes: true
|
|
state: "{{ item }}"
|
|
when: compose_file.changed or dnsmasq_config.changed or dnsmasq_vpn_hosts.changed
|
|
loop:
|
|
- absent
|
|
- present
|