TazLab K8s Flux DAG (Dependency Graph)
The cluster desired state is reconciled through a rigorous graph of Flux Kustomizations. This DAG ensures that foundational resources (Namespaces, CNI, DNS) are healthy before higher-level operators or applications are applied.
The Sequential Build Chain
The following order is defined by the dependsOn property in clusters/tazlab-k8s/:
1. The Foundation (Level 0 - Paralell)
infrastructure-operators-namespaces: Creates namespaces.- HealthCheck: Waits for
kube-flannel(DaemonSet) andcoredns(Deployment).
- HealthCheck: Waits for
infrastructure-operators-core: Installs Traefik, cert-manager, reloader.infrastructure-operators-data: Installs PostgreSQL operator (PGO).
2. Physical Bridge (Level 1)
infrastructure-bridge: Configures IngressClass and ClusterIssuer.- DependsOn:
namespaces,operators-core.
- DependsOn:
infrastructure-monitoring: Installs Prometheus/Grafana stack.- DependsOn:
namespaces.
- DependsOn:
3. Identity & Secrets (Level 2)
infrastructure-configs: DeploysExternalSecretresources.- DependsOn:
infrastructure-bridge.
- DependsOn:
4. Workloads & Storage (Level 3 - Parallel)
infrastructure-instances: DeploysPostgresCluster,traefikservice,longhorningress.- DependsOn:
infrastructure-configs,infrastructure-operators-data.
- DependsOn:
apps-static: Deployshugo-blog.- DependsOn:
infrastructure-configs.
- DependsOn:
apps-static-wiki: Deployshugo-wiki.- DependsOn:
infrastructure-configs.
- DependsOn:
apps-data: Deploysmnemosyne-mcp.- DependsOn:
infrastructure-configs.
- DependsOn:
apps-openclaw: Deploysopenclaw.- DependsOn:
infrastructure-configs.
- DependsOn:
5. Access Management (Level 4)
infrastructure-auth: Deploys Dex and OAuth2 Proxy.- DependsOn:
infrastructure-instances.
- DependsOn:
Synchronization Strategy
- Wait Mechanism: Only Level 0 and Level 1 use Flux
wait: trueorhealthChecks. - Resource Ready: From Level 3 onwards, Flux is configured with
wait: false. We rely on initContainers (wait-for-db) to handle application-level readiness without blocking the GitOps engine.
See Also
- Logic: Bootstrap Logic - Hand-off from ephemeral-castle.
- Hub: TazLab K8s Hub