--- 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