The GitOps Toolkit Helm reconciler, for declarative Helming
Go to file
Paulo Gomes 77b8877494
Update dependencies
- github.com/fluxcd/pkg/apis/kustomize v0.7.0
- github.com/fluxcd/pkg/apis/meta v0.18.0
- k8s.io/apiextensions-apiserver v0.25.4
- k8s.io/apimachinery v0.25.4
- github.com/fluxcd/pkg/apis/event v0.2.0
- github.com/fluxcd/pkg/runtime v0.24.0
- github.com/fluxcd/source-controller/api v0.32.1
- github.com/onsi/gomega v1.24.1
- helm.sh/helm/v3 v3.10.2
- k8s.io/cli-runtime v0.25.4

Signed-off-by: Paulo Gomes <paulo.gomes@weave.works>
2022-11-22 10:06:20 +00:00
.github/workflows Add an e2e test for keyless verification 2022-10-21 16:59:05 +02:00
api Update dependencies 2022-11-22 10:06:20 +00:00
config Allow 'h' in HelmRelease timeout field 2022-11-15 09:19:10 +08:00
controllers Use Flux Event API v1beta1 2022-11-08 16:26:31 +02:00
docs Add cosign verification to the chart Template 2022-10-21 16:18:02 +02:00
hack Depend on the Kustomize API from `fluxcd/pkg` 2021-02-03 20:02:19 +01:00
internal kube: configure proper account impersonation NS 2022-06-07 12:52:36 +02:00
tests/fuzz fuzz: Fix upstream build 2022-09-02 15:59:53 +01:00
.gitignore Refactor fuzzing 2022-01-17 20:45:16 +00:00
.goreleaser.yaml Publish SBOM and sign release artifacts 2022-01-26 09:23:38 +02:00
CHANGELOG.md Release v0.26.0 2022-10-21 19:12:35 +03:00
CODE_OF_CONDUCT.md Add DCO and code of conduct 2020-07-10 09:18:34 +03:00
DCO Add DCO and code of conduct 2020-07-10 09:18:34 +03:00
DEVELOPMENT.md update to new doc links structure 2022-08-30 14:52:13 +02:00
Dockerfile Build with Go 1.19 2022-09-28 18:37:42 +03:00
LICENSE Support Helm install action 2020-07-08 16:23:38 +02:00
MAINTAINERS Update MAINTAINERS info 2022-08-31 16:55:05 +02:00
Makefile Build with Go 1.19 2022-09-28 18:37:42 +03:00
PROJECT Promote API to v2beta1 2020-09-30 19:37:23 +02:00
README.md update to new doc links structure 2022-08-30 14:52:13 +02:00
go.mod Update dependencies 2022-11-22 10:06:20 +00:00
go.sum Update dependencies 2022-11-22 10:06:20 +00:00
main.go internal/kube: get REST config from runtime 2022-05-12 12:55:36 +02:00

README.md

helm-controller

CII Best Practices e2e report license release

The helm-controller is a Kubernetes operator, allowing one to declaratively manage Helm chart releases. It is part of a composable GitOps toolkit and depends on source-controller to acquire the Helm charts from Helm repositories.

The desired state of a Helm release is described through a Kubernetes Custom Resource named HelmRelease. Based on the creation, mutation or removal of a HelmRelease resource in the cluster, Helm actions are performed by the operator.

overview

Features

  • Watches for HelmRelease objects and generates HelmChart objects
  • Supports HelmChart artifacts produced from HelmRepository, GitRepository and Bucket sources
  • Fetches artifacts produced by source-controller from HelmChart objects
  • Watches HelmChart objects for revision changes (including semver ranges for charts from HelmRepository sources)
  • Performs automated Helm actions, including Helm tests, rollbacks and uninstalls
  • Offers extensive configuration options for automated remediation (rollback, uninstall, retry) on failed Helm install, upgrade or test actions
  • Runs Helm install/upgrade in a specific order, taking into account the depends-on relationship defined in a set of HelmRelease objects
  • Reports Helm release statuses (alerting provided by notification-controller)
  • Built-in Kustomize compatible Helm post renderer, providing support for strategic merge, JSON 6902 and images patches

Guides

Specifications