# ansible-role-pihole Installs Pi-hole using the official unattended installer. A `setupVars.conf` is written before the installer runs so no interactive prompts appear. The installer creates its own system users and manages its own services. ## Requirements - Ansible >= 2.14 - Debian or Ubuntu - A static IP address on the target host ## Role Variables | Variable | Default | Description | |---|---|---| | `pihole_interface` | `{{ ansible_default_ipv4.interface }}` | Network interface | | `pihole_ipv4_address` | `{{ ansible_default_ipv4.address }}/{{ ansible_default_ipv4.prefix }}` | IP/CIDR | | `pihole_dns_1` | `8.8.8.8` | Primary upstream DNS | | `pihole_dns_2` | `8.8.4.4` | Secondary upstream DNS | | `pihole_query_logging` | `"true"` | Enable query logging | | `pihole_install_web_server` | `"true"` | Install lighttpd web server | | `pihole_install_web_interface` | `"true"` | Install web admin interface | | `pihole_lighttpd_enabled` | `"true"` | Enable lighttpd | | `pihole_cache_size` | `10000` | DNS cache size | ## Example Playbook ```yaml - hosts: dns_servers roles: - role: ansible-role-pihole vars: pihole_dns_1: 1.1.1.1 pihole_dns_2: 1.0.0.1 ``` ## License MIT