summaryrefslogtreecommitdiffstats
path: root/modules/pihole
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2021-07-01 01:29:19 -0400
committerJesse Luehrs <doy@tozt.net>2021-07-01 01:29:19 -0400
commitb49d783f737132323cabf59818e740a5e8dcb051 (patch)
treed2a9a43fa5d0db65a031cc26c3a94c98469581b7 /modules/pihole
parentc361a604a5aca973d5294d26b5517bb8c621b6af (diff)
downloadpuppet-tozt-b49d783f737132323cabf59818e740a5e8dcb051.tar.gz
puppet-tozt-b49d783f737132323cabf59818e740a5e8dcb051.zip
run pihole on partofme
Diffstat (limited to 'modules/pihole')
-rw-r--r--modules/pihole/manifests/init.pp30
-rw-r--r--modules/pihole/templates/pihole.service11
2 files changed, 41 insertions, 0 deletions
diff --git a/modules/pihole/manifests/init.pp b/modules/pihole/manifests/init.pp
new file mode 100644
index 0000000..7de72c1
--- /dev/null
+++ b/modules/pihole/manifests/init.pp
@@ -0,0 +1,30 @@
+class pihole($dir) {
+ include podman
+
+ file {
+ $dir:
+ ensure => directory;
+ "${dir}/etc-pihole":
+ ensure => directory,
+ require => File[$dir];
+ "${dir}/etc-dnsmasq.d":
+ ensure => directory,
+ require => File[$dir];
+ "${dir}/var-log":
+ ensure => directory,
+ require => File[$dir];
+ "${dir}/var-log/pihole.log":
+ content => "",
+ require => File["${dir}/var-log"];
+ }
+
+ systemd::service { "pihole":
+ source => "puppet:///modules/pihole/pihole.service";
+ }
+
+ service { "pihole":
+ ensure => "running",
+ enable => true,
+ subscribe => Systemd::Service["pihole"];
+ }
+}
diff --git a/modules/pihole/templates/pihole.service b/modules/pihole/templates/pihole.service
new file mode 100644
index 0000000..bfcd3d9
--- /dev/null
+++ b/modules/pihole/templates/pihole.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=runs pihole
+After=network.target
+
+[Service]
+ExecStart=/usr/bin/podman run --rm --name pihole -p 53:53/tcp -p 53:53/udp -p 80:80 -e TZ=America/New_York -v "<%= @dir %>/etc-pihole/:/etc/pihole/" -v "<%= @dir %>/etc-dnsmasq.d/:/etc/dnsmasq.d/" -v "<%= @dir %>/var-log/pihole.log:/var/log/pihole.log" --dns 127.0.0.1 --dns 4.2.2.4 --hostname pi.hole -e VIRTUAL_HOST=pi.hole -e PROXY_LOCATION=pi.hole -e WEBPASSWORD=test -e ServerIP=127.0.0.1 docker.io/pihole/pihole:latest
+ExecStop=/usr/bin/docker stop pihole
+Restart=always
+
+[Install]
+WantedBy=default.target