From 53232fe9fee359f45c97843c200e68d0027ba7af Mon Sep 17 00:00:00 2001 From: jasonwitty Date: Sun, 26 Jul 2026 08:59:21 -0700 Subject: [PATCH] Split unbound into its own app directory MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit unbound was bundled inside apps/pihole/ and invisible in the apps/ listing. Now apps/unbound/ (deployment + service + kustomization); it stays in the pihole namespace, whose Namespace object remains owned by apps/pihole. No resource changes — server-side dry-run clean (36 resources). Co-Authored-By: Claude Fable 5 --- README.md | 3 ++- apps/pihole/kustomization.yaml | 1 - apps/pihole/service.yaml | 19 ------------------- .../deployment.yaml} | 0 apps/unbound/kustomization.yaml | 7 +++++++ apps/unbound/service.yaml | 18 ++++++++++++++++++ kustomization.yaml | 1 + 7 files changed, 28 insertions(+), 21 deletions(-) rename apps/{pihole/deployment-unbound.yaml => unbound/deployment.yaml} (100%) create mode 100644 apps/unbound/kustomization.yaml create mode 100644 apps/unbound/service.yaml diff --git a/README.md b/README.md index 2c9d5f6..a0dad8a 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,8 @@ Each app under `apps/` is a self-contained kustomization | searxng | default | searxng.wittyoneoff.com, origin-searxng.wittyoneoff.com | | home-assistant | home-assistant | ha.wittyoneoff.com, ha-origin.wittyoneoff.com | | nginx | nginx | www.wittyoneoff.com, www.ramonaajj.com | -| pihole (+unbound) | pihole | admin on :8000 via klipper-lb, DNS on :53 | +| pihole | pihole | admin on :8000 via klipper-lb, DNS on :53 | +| unbound | pihole | pi-hole's upstream recursive resolver (ClusterIP only) | | unified-streaming | unified-streaming | unified.wittyoneoff.com | Not in this repo: socktop (own repo + pipeline), rancher/monitoring/logging diff --git a/apps/pihole/kustomization.yaml b/apps/pihole/kustomization.yaml index c9a4c11..5fb8866 100644 --- a/apps/pihole/kustomization.yaml +++ b/apps/pihole/kustomization.yaml @@ -6,5 +6,4 @@ resources: - namespace.yaml - storage.yaml - deployment-pihole.yaml - - deployment-unbound.yaml - service.yaml diff --git a/apps/pihole/service.yaml b/apps/pihole/service.yaml index 15fc154..01535d6 100644 --- a/apps/pihole/service.yaml +++ b/apps/pihole/service.yaml @@ -32,22 +32,3 @@ spec: targetPort: 67 nodePort: 31025 protocol: UDP ---- -apiVersion: v1 -kind: Service -metadata: - name: unbound-service - namespace: pihole -spec: - type: ClusterIP - selector: - app: unbound - ports: - - name: udp-53 - port: 53 - targetPort: 53 - protocol: UDP - - name: tcp-53 - port: 53 - targetPort: 53 - protocol: TCP diff --git a/apps/pihole/deployment-unbound.yaml b/apps/unbound/deployment.yaml similarity index 100% rename from apps/pihole/deployment-unbound.yaml rename to apps/unbound/deployment.yaml diff --git a/apps/unbound/kustomization.yaml b/apps/unbound/kustomization.yaml new file mode 100644 index 0000000..3052cdf --- /dev/null +++ b/apps/unbound/kustomization.yaml @@ -0,0 +1,7 @@ +apiVersion: kustomize.config.k8s.io/v1beta1 +kind: Kustomization +# Lives in the pihole namespace (pi-hole's upstream resolver) — the namespace +# object itself is owned by apps/pihole. +resources: + - deployment.yaml + - service.yaml diff --git a/apps/unbound/service.yaml b/apps/unbound/service.yaml new file mode 100644 index 0000000..b05e97d --- /dev/null +++ b/apps/unbound/service.yaml @@ -0,0 +1,18 @@ +apiVersion: v1 +kind: Service +metadata: + name: unbound-service + namespace: pihole +spec: + type: ClusterIP + selector: + app: unbound + ports: + - name: udp-53 + port: 53 + targetPort: 53 + protocol: UDP + - name: tcp-53 + port: 53 + targetPort: 53 + protocol: TCP diff --git a/kustomization.yaml b/kustomization.yaml index 14f083f..314b5b6 100644 --- a/kustomization.yaml +++ b/kustomization.yaml @@ -6,4 +6,5 @@ resources: - apps/home-assistant - apps/nginx - apps/pihole + - apps/unbound - apps/unified-streaming