--- # Self-managing ROOT Kustomization (the flux2 "gotk-sync" pattern). # # Reconciles ./clusters/dev from the GitRepository, so the ENTIRE graph is applied from git on every # push: the cluster-vars ConfigMap, the GitRepository source, the platform / platform-config / apps # Kustomizations — and THIS object itself. Without it the on-cluster cluster-vars ConfigMap was NOT # reconciled by Flux, so overlay / cluster-vars changes needed a manual `kubectl apply -k clusters/dev` # (DECISIONS-LOG F-OPS1). Now a `git push` is enough. # # Bootstrap is unchanged: `kubectl apply -k clusters/dev` (bootstrap/flux/bootstrap.sh step 3) still # creates this once; thereafter it self-reconciles. prune keeps the cluster matching git; wait:false # so the root never blocks on its children (platform has its own wait/health gating). # NOTE: env-specific (path ./clusters/dev). A prod overlay needs its own sync.yaml → ./clusters/prod. apiVersion: kustomize.toolkit.fluxcd.io/v1 kind: Kustomization metadata: name: flux-system namespace: flux-system spec: interval: 10m retryInterval: 2m timeout: 5m prune: true wait: false sourceRef: kind: GitRepository name: flux-system path: ./clusters/dev