The GitOps Toolkit Helm reconciler, for declarative Helming
Go to file
Sanskar Jaiswal 5dbdbd1299 check if service account exists before uninstalling release
Check if the service account to be impersonated actually exists
and proceed with uninstalling the Helm release only if it does.
Otherwise, skip uninstalling the release and carry on with finalization.
Add an e2e test to check if deleting a namespace with the RBAC and
HelmRelease succeeds with the namespace being fully deleted.

Signed-off-by: Sanskar Jaiswal <jaiswalsanskar078@gmail.com>
2023-03-02 18:13:26 +05:30
.github/workflows check if service account exists before uninstalling release 2023-03-02 18:13:26 +05:30
api api: update dependencies 2023-03-01 13:30:37 +01:00
config check if service account exists before uninstalling release 2023-03-02 18:13:26 +05:30
controllers check if service account exists before uninstalling release 2023-03-02 18:13:26 +05:30
docs Change to `helm.toolkit.fluxcd.io/driftDetection` 2023-03-01 13:04:13 +01:00
hack Depend on the Kustomize API from `fluxcd/pkg` 2021-02-03 20:02:19 +01:00
internal runner: simplify DebugLog wrapper 2023-03-02 10:01:09 +01:00
tests/fuzz fuzz: Use build script from upstream 2022-12-14 21:45:45 +00: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.30.0 2023-02-17 10:34:53 +01: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: update to Go 1.20 2023-03-01 15:52:08 +01: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: update to Go 1.20 2023-03-01 15:52:08 +01: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 2023-03-01 13:38:03 +01:00
go.sum Update dependencies 2023-03-01 13:38:03 +01:00
main.go Enable experimental drift detection 2023-03-01 09:36:43 +01: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