// the find
projectsveltos/addon-controller
Sveltos Kubernetes add-on controller programmatically deploys add-ons and applications in tens of clusters. Support for ClusterAPI powered clusters, Helm charts, kustomize ,YAMLs. Sveltos has built-in support for multi-tenancy.
Sveltos is a Kubernetes controller that manages add-on deployment across fleets of clusters from a central management cluster. It handles Helm charts, raw YAML, Kustomize, Jsonnet, and Carvel ytt, with label-selector-based targeting. The target audience is platform engineers running 10+ clusters who want GitOps-style consistency without Flux or Argo managing every cluster individually.
The Profile vs ClusterProfile split for multi-tenancy is well thought out — namespace-scoped profiles let tenant admins manage their clusters without touching global config. Pull mode for air-gapped and edge clusters is a genuine differentiator that most competing tools ignore entirely. Dependency ordering between ClusterProfiles (wait for dependency to be healthy before deploying dependent) solves a real bootstrapping problem with CNI before everything else. The functional test suite in test/fv/ is extensive and covers drift detection, dry-run, OCI sources, and multi-tenancy — not just happy-path smoke tests.
At 522 stars it has real production users (Mirantis, Comcast) but the community is thin — 44 forks and a small Slack suggests you'd own most of your own debugging. The event-driven framework is mentioned prominently in the README but explained only through video links, not docs inline — discovering what events are supported requires digging. Template instantiation using data pulled from managed clusters is powerful but also a footgun: a misconfigured TemplateResourceDef can silently deploy wrong config to many clusters at once with no preview. There's a license_manager.go in the controllers package, which hints at commercial restrictions that aren't clearly disclosed in the README.