81 lines
1.7 KiB
YAML
81 lines
1.7 KiB
YAML
---
|
|
|
|
- name: Clone pi-hole
|
|
become: yes
|
|
git:
|
|
accept_newhostkey: yes
|
|
dest: /opt/pi-hole
|
|
repo: https://github.com/pi-hole/pi-hole.git
|
|
|
|
- name: Install pi-hole if needed
|
|
become: yes
|
|
register: pihole_install
|
|
command:
|
|
creates: /usr/bin/pihole-FTL
|
|
cmd: false # bash basic-install.sh
|
|
chdir: '/opt/pi-hole/automated install'
|
|
|
|
- name: Ensure pihole web admin password
|
|
become: yes
|
|
command: "pihole -a -p {{ passwords['Chappaai'] }}"
|
|
# when: pihole_install.changed
|
|
|
|
- name: Generate DNS/DHCP from inventory
|
|
delegate_to: localhost
|
|
run_once: true
|
|
command: "python3 ../bin/generate-pihole-dns-dhcp.py {{ inventory_file }}"
|
|
|
|
- name: Chappaai DNS
|
|
become: yes
|
|
register: dns_updated
|
|
copy:
|
|
dest: /etc/pihole/custom.list
|
|
src: dns
|
|
owner: pihole
|
|
group: pihole
|
|
mode: 0644
|
|
|
|
- name: Chappaai DHCP
|
|
become: yes
|
|
register: dhcp_updated
|
|
copy:
|
|
src: dhcp
|
|
dest: /etc/dnsmasq.d/04-pihole-static-dhcp.conf
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
|
|
- name: Chappaai Configuration
|
|
become: yes
|
|
register: conf_updated
|
|
copy:
|
|
src: pihole-FTL.conf
|
|
dest: /etc/pihole/pihole-FTL.conf
|
|
owner: root
|
|
group: root
|
|
mode: 0644
|
|
|
|
|
|
- name: Chappaai DHCP Leases dir
|
|
become: yes
|
|
file:
|
|
path: /var/lib/misc/
|
|
state: directory
|
|
owner: root
|
|
group: root
|
|
mode: 0777
|
|
|
|
- name: Chappaai DHCP Leases
|
|
become: yes
|
|
file:
|
|
path: /var/lib/misc/dnsmasq.leases
|
|
state: touch
|
|
owner: pihole
|
|
group: pihole
|
|
mode: 0660
|
|
|
|
- name: Reload services
|
|
become: yes
|
|
command: pihole restartdns
|
|
when: dns_updated.changed or dhcp_updated.changed or conf_updated.changed
|