apps/
baikal/
kompass/
infrastructure/
database/
monitoring/
networking/
secrets/
storage/
clusters/
local/
prod/
clusters/localandclusters/prodare the Flux sync entrypoints.clusters/local/appsandclusters/prod/appsaggregate app-owned FluxKustomizationmanifests.clusters/local/infrastructureandclusters/prod/infrastructureaggregate infrastructure-owned FluxKustomizationmanifests.- Deployable units own their Flux entrypoints directly in
apps/*andinfrastructure/**. - Shared/default entrypoints use
app.yaml. - Environment-specific entrypoints use
local.yamlandprod.yamlonly when behavior diverges.
- Cluster aggregators compose component-owned manifests only.
- Cluster aggregators may apply uniform defaults, but they do not rewrite component
spec.pathvalues. - Local external-secrets uses the fake provider-backed
ClusterSecretStorefrominfrastructure/secrets/external-secrets/env-local. - Production external-secrets uses the 1Password-backed
ClusterSecretStorefrominfrastructure/secrets/external-secrets/env-prod. - Production app volsync behavior lives in app-owned
prod.yamlmanifests.
./bootstrap/run.sh prod
./bootstrap/run.sh localThe script selects:
- branch
mainwith./clusters/prod - branch
localwith./clusters/local
kustomize build clusters/local/apps
kustomize build clusters/local/infrastructure
kustomize build clusters/prod/apps
kustomize build clusters/prod/infrastructure
kustomize build clusters/local
kustomize build clusters/prodkustomize build clusters/local | rg 'name: infrastructure|name: apps|dependsOn:'
kustomize build clusters/prod | rg 'name: infrastructure|name: apps|dependsOn:'kustomize build infrastructure/secrets/external-secrets/env-local | rg 'fake:'
kustomize build infrastructure/secrets/external-secrets/env-prod | rg 'onepassword:'