Stage 1 of REFACTOR_PLAN.md. values/gitea.yaml and config/dashy/conf.yaml now reference secrets injected at apply-time (gitea-postgres-secret.sh, .env) instead of hardcoding a live DB password and weather API key in git. Both values must be treated as compromised and rotated by the operator (see .env.example). Also fixes authentik-ingress.yaml and traefik-dashboard-ingress.yaml, which pointed at the internal-ca root ClusterIssuer instead of internal-ca-issuer, the chained issuer every other internal Certificate uses -- causing untrusted-cert warnings on the SSO login and Traefik dashboard. Extends .gitignore for *.retry, .vault_pass*, kubeconfig patterns, and editor swap files. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
70 lines
1.8 KiB
YAML
70 lines
1.8 KiB
YAML
# Apply: kubectl apply -f manifests/network/traefik-dashboard-ingress.yaml
|
|
# Delete: kubectl delete -f manifests/network/traefik-dashboard-ingress.yaml
|
|
# Description: Traefik dashboard IngressRoute with Authentik auth, root redirect, and TLS certificate.
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: IngressRoute
|
|
metadata:
|
|
name: traefik-dashboard
|
|
namespace: traefik
|
|
spec:
|
|
entryPoints:
|
|
- websecure
|
|
- traefik
|
|
routes:
|
|
- match: Host(`traefik.home.arpa`) && PathPrefix(`/outpost.goauthentik.io`)
|
|
kind: Rule
|
|
services:
|
|
- name: authentik-proxy-outpost
|
|
namespace: authentik
|
|
port: 9000
|
|
- match: Host(`traefik.home.arpa`) && Path(`/`)
|
|
kind: Rule
|
|
middlewares:
|
|
- name: redirect-to-dashboard
|
|
namespace: traefik
|
|
services:
|
|
- name: api@internal
|
|
kind: TraefikService
|
|
- match: Host(`traefik.home.arpa`) && PathPrefix(`/dashboard`)
|
|
kind: Rule
|
|
middlewares:
|
|
- name: authentik-auth
|
|
namespace: authentik
|
|
services:
|
|
- name: api@internal
|
|
kind: TraefikService
|
|
- match: Host(`traefik.home.arpa`) && PathPrefix(`/api`)
|
|
kind: Rule
|
|
middlewares:
|
|
- name: authentik-auth
|
|
namespace: authentik
|
|
services:
|
|
- name: api@internal
|
|
kind: TraefikService
|
|
tls:
|
|
secretName: traefik-dashboard-tls
|
|
---
|
|
apiVersion: traefik.io/v1alpha1
|
|
kind: Middleware
|
|
metadata:
|
|
name: redirect-to-dashboard
|
|
namespace: traefik
|
|
spec:
|
|
redirectRegex:
|
|
regex: ^https://traefik.home.arpa/$
|
|
replacement: https://traefik.home.arpa/dashboard/
|
|
permanent: true
|
|
---
|
|
apiVersion: cert-manager.io/v1
|
|
kind: Certificate
|
|
metadata:
|
|
name: traefik-dashboard-tls
|
|
namespace: traefik
|
|
spec:
|
|
secretName: traefik-dashboard-tls
|
|
issuerRef:
|
|
name: internal-ca-issuer
|
|
kind: ClusterIssuer
|
|
dnsNames:
|
|
- traefik.home.arpa
|