Comparisons

StageSet isn’t a templating tool and isn’t a replacement for your manifest generator. It’s a delivery controller: it takes manifests that already exist (as a Flux ExternalArtifact) and rolls them out in order, with gates, under continuous reconciliation. The tools below come up in the same situations; here is how each one relates.

Generates manifestsApplies themContinuous reconcile / driftOrdered stages within a releaseGates / typed actions
StageSetnoyesyesyesyes
Helmyes (templates)yes (helm upgrade)nohooks + weightshooks only
Kustomize (kustomize CLI)yes (overlays)no (kubectl apply)nonono
Flux kustomize-controllernoyesyesbetween Kustomizationshealth checks
Tanka / kubecfgyes (Jsonnet)yes (CLI)nodependency orderno

StageSet is complementary to all of them. It consumes manifests produced by Helm , Kustomize , Tanka , or anything else — its job starts once you have manifests and need to deliver them carefully.

Progressive-delivery controllers (Flagger , Argo Rollouts ) sit at another layer — traffic shifting for a single workload — and also compose with StageSet rather than replace it; see vs Argo Rollouts .

All comparisons