diff options
Diffstat (limited to 'roles/pihole/tasks/main.yml')
| -rw-r--r-- | roles/pihole/tasks/main.yml | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/roles/pihole/tasks/main.yml b/roles/pihole/tasks/main.yml new file mode 100644 index 00000000..bb377957 --- /dev/null +++ b/roles/pihole/tasks/main.yml @@ -0,0 +1,62 @@ +--- +- name: "Crete Pi-hole user" + ansible.builtin.user: + name: "pihole" + system: true + shell: "/usr/sbin/nologin" + home: "/var/lib/pihole" + create_home: true + +- name: "Create Pi-hole directories" + ansible.builtin.file: + path: "{{ item }}" + state: "directory" + owner: "pihole" + group: "pihole" + mode: "0755" + with_items: + - "/etc/pihole" + - "/var/lib/pihole" + - "/var/log/pihole" + +- name: "Create Pi-hole configuration file" + ansible.builtin.template: + src: "pihole.toml.j2" + dest: "/etc/pihole/pihole.toml" + owner: "pihole" + group: "pihole" + mode: "0644" + notify: "Restart pihole" + tags: + - molecule-idempotence-notest + +- name: "Download Pi-hole installer" + ansible.builtin.get_url: + url: "https://install.pi-hole.net" + dest: "/tmp/install_pihole.sh" + mode: "0755" + +- name: "Run Pi-hole installer" + ansible.builtin.command: + cmd: "/tmp/install_pihole.sh --unattended" + register: pihole_install + environment: + PIHOLE_SKIP_OS_CHECK: "true" + args: + creates: "/usr/local/bin/pihole" + +- name: "Show install output" + ansible.builtin.debug: + var: pihole_install.stdout + +- name: "Ensure Pi-hole started/enabled" + ansible.builtin.systemd_service: + name: "pihole-FTL" + enabled: true + state: "started" + daemon_reload: true + +- name: "Update Pi-hole blocklists" + ansible.builtin.command: + cmd: "pihole -g" + changed_when: false |
