helm-controller is a Kubernetes operator that manages Helm chart deployments through Custom Resource Definitions.
The tool solves the problem of declaratively managing Helm charts within Kubernetes clusters. Instead of running helm commands manually, operators define HelmChart resources that the controller watches and reconciles. The controller reads these custom resources and applies the corresponding Helm charts to the cluster, allowing chart deployments to be version-controlled and managed like any other Kubernetes resource.
The project suits teams running Kubernetes who want to treat Helm chart deployments as infrastructure-as-code. It offers both namespaced and cluster-scoped deployment modes, giving operators flexibility in how broadly the controller watches for changes. Namespaced deployments confine the controller to a single namespace, while cluster-scoped deployments allow it to manage charts across the entire cluster. The tool is straightforward to deploy using provided YAML manifests and can run either as a local daemon for development or as a pod within the cluster itself.
Development activity shows consistent maintenance with regular testing and validation workflows built into the build process. The project includes comprehensive API documentation for the HelmChart and HelmChartConfig resources. Build and test infrastructure is well-established, with make targets for building, validation, and testing readily available to contributors.