7f1444fb38
## Summary - Deploy Authentik (identity.unkin.net) via Helm chart 2026.5.3 - CNPG PostgreSQL cluster (3 instances) with separate rw/ro poolers (2 instances each) - Redis with 5Gi persistent storage - Gateway API for HTTPS (identity.unkin.net) and LDAPS (ldap.k8s.syd1.au.unkin.net, ldap.main.unkin.net) - TLSRoute for LDAPS passthrough, HTTPRoute for external-dns record creation - Vault secrets for postgres credentials, authentik secret key, and S3 storage credentials - S3 storage via RadosGW (bucket: authentik) - 3 server replicas, 2 worker replicas - Woodpecker ServiceAccount for terraform-authentik CI - Platform applicationset and project updated ## Dependencies - terraform-git #15 (merged) — repo definition - terraform-vault #78 (merged) — auth roles and Consul ACL ## Vault secrets needed before deploy Write to `kv/kubernetes/namespace/authentik/default/`: - `postgres-credentials`: username + password - `authentik-credentials`: AUTHENTIK_SECRET_KEY - `s3-credentials`: S3 access key + secret key Reviewed-on: #211 Co-authored-by: Ben Vincent <ben@unkin.net> Co-committed-by: Ben Vincent <ben@unkin.net>
62 lines
1.9 KiB
YAML
62 lines
1.9 KiB
YAML
---
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: ApplicationSet
|
|
metadata:
|
|
name: platform-apps
|
|
namespace: argocd
|
|
spec:
|
|
generators:
|
|
- git:
|
|
repoURL: https://git.unkin.net/unkin/argocd-apps
|
|
revision: HEAD
|
|
directories:
|
|
- path: apps/overlays/*/authentik
|
|
- path: apps/overlays/*/artifactapi
|
|
- path: apps/overlays/*/age-api
|
|
- path: apps/overlays/*/cattle-system
|
|
- path: apps/overlays/*/cert-manager
|
|
- path: apps/overlays/*/certificates
|
|
- path: apps/overlays/*/cnpg-system
|
|
- path: apps/overlays/*/consul
|
|
- path: apps/overlays/*/elastic-system
|
|
- path: apps/overlays/*/externaldns
|
|
- path: apps/overlays/*/inteldeviceplugins-system
|
|
- path: apps/overlays/*/jfrog
|
|
- path: apps/overlays/*/kanidm
|
|
- path: apps/overlays/*/node-feature-discovery
|
|
- path: apps/overlays/*/priority-classes
|
|
- path: apps/overlays/*/puppet
|
|
- path: apps/overlays/*/purelb
|
|
- path: apps/overlays/*/reflector-system
|
|
- path: apps/overlays/*/reloader-system
|
|
- path: apps/overlays/*/reposync
|
|
- path: apps/overlays/*/traefik-system
|
|
- path: apps/overlays/*/vm-system
|
|
- path: apps/overlays/*/vault
|
|
- path: apps/overlays/*/vso-system
|
|
- path: apps/overlays/*/woodpecker
|
|
template:
|
|
metadata:
|
|
name: 'platform-{{path[3]}}' # cluster-app format (e.g., platform-reflector-system)
|
|
spec:
|
|
project: platform
|
|
source:
|
|
repoURL: https://git.unkin.net/unkin/argocd-apps
|
|
targetRevision: HEAD
|
|
path: '{{path}}'
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: '{{path[3]}}' # Use directory name as namespace
|
|
ignoreDifferences:
|
|
- group: ""
|
|
kind: ConfigMap
|
|
name: kanidm-repl-certs
|
|
jsonPointers:
|
|
- /data
|
|
syncPolicy:
|
|
automated:
|
|
prune: true
|
|
selfHeal: true
|
|
syncOptions:
|
|
- ServerSideApply=true
|