external-dns unifi

This commit is contained in:
Daren Lord committed 2024-11-07 05:21:30 +00:00
1 parent ec5e6d468f
commit a38a41e59f
8 files changed
+138 -10

No files matched your search

@@ -2,7 +2,7 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: &app external-dns
name: &app external-dns-cloudflared
spec:
interval: 30m
chart:
@@ -30,7 +30,7 @@ spec:
- name: CF_API_TOKEN
valueFrom:
secretKeyRef:
name: external-dns-secret
name: external-dns-secret-cloudflared
key: api-token
extraArgs:
- --ingress-class=external
@@ -45,4 +45,4 @@ spec:
serviceMonitor:
enabled: true
podAnnotations:
secret.reloader.stakater.com/reload: external-dns-secret
secret.reloader.stakater.com/reload: external-dns-secret-cloudflared
@@ -1,7 +1,7 @@
apiVersion: v1
kind: Secret
metadata:
name: external-dns-secret
name: external-dns-secret-cloudflared
stringData:
api-token: ENC[AES256_GCM,data:ChZtqRA8VGVXyWVzuRJ50WSYBpn2H0+1Bj5Bvwf+En8798ZAKsyRRg==,iv:A6jtZ5EBkXlfLUyQyY6F9g1V8U15HmtrL/EqgoTJYaI=,tag:Yq7PGYPFRZogKwmXAtN9ow==,type:str]
sops:
@@ -19,8 +19,8 @@ sops:
YVhxZ1pnRUVhc2JRSDB4OTJSSWRBa0kKrDawXKhudgzVEohCyWMvxVdSN0x6K0VJ
PJwFqLSWb5aheWZ9+ZFJXqpnJIXt9uX73R51GIQe2iugnRma/BrHeg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-11-05T23:02:05Z"
mac: ENC[AES256_GCM,data:2236klYqpKXu1k7kz3aoprmFp1/ADVT0d/m2mT3ZCxUMr4g2yrY2lniEyRfyn8hTsW/hnQyJ37n6ubIL87kXRMCQEEU2kgTWheoWd/JrQJVcMzGgoRoz0huuu6xS7TuQz7VPtqfWy6AQCvJZgZtfM5GPpfbkmx7yEyPPCWHOXcs=,iv:kQ+yGcEwPgUskU7TnU11EOkJT5fKMDHm6ciy4RMr+sc=,tag:uE7ozHmMRXCysNm0lIHQzQ==,type:str]
lastmodified: "2024-11-07T05:12:53Z"
mac: ENC[AES256_GCM,data:6x4QhGtYvqHspWFxwNGYGSbyLIpYeEST4WsY/CNZ5cOG0rn38GChqd4uSKehzrFHoj66A9DgOoK3LeUP43ttsSQ4QJNCKEt1+cRjGhGMQiv0QZEKIBlkcIIfUZtYfP7F1ty/eO+bvNH/DxD6sD6SsCoTXCF4zXke3UKehsa9ppc=,iv:5hauKyNe46bHI7yikiVpn5jew6BRrXI5lqCGx12pVwU=,tag:itZ/gjPHw9Fl/LmTPwIHJg==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.9.1
@@ -0,0 +1,75 @@
---
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/helm.toolkit.fluxcd.io/helmrelease_v2.json
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: &app external-dns-unifi
spec:
interval: 30m
chart:
spec:
chart: external-dns
version: 1.15.0
sourceRef:
kind: HelmRepository
name: external-dns
namespace: flux-system
install:
remediation:
retries: 3
upgrade:
cleanupOnFail: true
remediation:
strategy: rollback
retries: 3
values:
fullnameOverride: *app
# logLevel: debug
provider:
name: webhook
webhook:
image:
repository: ghcr.io/kashalls/external-dns-unifi-webhook
tag: v0.3.1@sha256:593eeb3594a8418084d3235b2a30ca8aa4c58b949fac3433b86df6c725364e32
env:
- name: UNIFI_HOST
value: https://10.0.10.1
- name: UNIFI_USER
valueFrom:
secretKeyRef:
name: &secret external-dns-secret-unifi
key: EXTERNAL_DNS_UNIFI_USER
- name: UNIFI_PASS
valueFrom:
secretKeyRef:
name: *secret
key: EXTERNAL_DNS_UNIFI_PASS
# - name: LOG_LEVEL
# value: "debug"
livenessProbe:
httpGet:
path: /healthz
port: http-webhook
initialDelaySeconds: 10
timeoutSeconds: 5
readinessProbe:
httpGet:
path: /readyz
port: http-webhook
initialDelaySeconds: 10
timeoutSeconds: 5
extraArgs:
- --ignore-ingress-tls-spec
- --crd-source-apiversion=externaldns.k8s.io/v1alpha1
- --crd-source-kind=DNSEndpoint
policy: sync
sources: ["ingress", "service"]
txtOwnerId: main
txtPrefix: k8s.
domainFilters: ["${SECRET_DOMAIN_INTERNAL}", "${SECRET_DOMAIN}"]
serviceMonitor:
enabled: true
podAnnotations:
secret.reloader.stakater.com/reload: *secret
@@ -0,0 +1,6 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./secret.sops.yaml
- ./helmrelease.yaml
@@ -0,0 +1,27 @@
apiVersion: v1
kind: Secret
metadata:
name: external-dns-secret-unifi
stringData:
EXTERNAL_DNS_UNIFI_USER: ENC[AES256_GCM,data:skYvK2I=,iv:CElXO2istWXepbiWd++NzA7rQWqMGyOwqxCFMs4cr+Q=,tag:y1Y11+DM1qmiXRLJpHp/NQ==,type:str]
EXTERNAL_DNS_UNIFI_PASS: ENC[AES256_GCM,data:Y5Ybzo34wKo=,iv:rXvdz/9YTGASfnwhIQIeqceh6QxPhGpcKpCNNIkZi0Q=,tag:tfBHuRaJhHVwuK5ZHaFXBQ==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1mhnje42sefcfpvgpeppch84g6vgptmd4gukgvr3gueuxy6ph05xqx45jty
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSB4VEg5Q1ZXYm03RW1PWFdL
eEZOUzY3a2Q4WUU4VGlUNWJMYUFGMXhuQ2pVCldZd1c0R3VvbEZaNnhhVDg2K20z
SHJSYndHQ3pCRmtZWkxyYm8vSkpnMXMKLS0tIFRUdFpveW1zNGpOVXJBWGtCU09x
YVhxZ1pnRUVhc2JRSDB4OTJSSWRBa0kKrDawXKhudgzVEohCyWMvxVdSN0x6K0VJ
PJwFqLSWb5aheWZ9+ZFJXqpnJIXt9uX73R51GIQe2iugnRma/BrHeg==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-11-07T05:18:05Z"
mac: ENC[AES256_GCM,data:CvhFqBrPQaoe3tZ3Vg86JK0Il+pawDm2vG5uqgNP3Y7IGJ7uRTz+dj+XUvwFNmxXCjh1/LtoSTfoZzyqmfQnmVy76ax55VlcUWJBSiW0RO965Op6EHgMoPDhq8kvqL3wYtA3vIt755WVzzzoRXahnhw42DIyz/fGiSUkIzdNLtw=,iv:PQ3cIa6Chwcae12G1KNwgXjuQI96XtI+Fg43nCwQN3Y=,tag:dp7k5RuCy6bqC+UGS9LWsg==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.9.1