Help us shape the future of Go! Take the 2026 Go Developer Survey

features

package
v1.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 24, 2026 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Overview

Package features sets the feature gates that helm-controller supports, and their default states.

Index

Constants

View Source
const (
	// DetectDrift configures the detection of cluster state drift compared to
	// the desired state as described in the manifest of the Helm release
	// storage object.
	// Deprecated in v0.37.0, use the drift detection mode on the HelmRelease
	// object instead.
	DetectDrift = "DetectDrift"

	// CorrectDrift configures the correction of cluster state drift compared to
	// the desired state as described in the manifest of the Helm release. It
	// is only effective when DetectDrift is enabled.
	// Deprecated in v0.37.0, use the drift detection mode on the HelmRelease
	// object instead.
	CorrectDrift = "CorrectDrift"

	// AllowDNSLookups allows the controller to perform DNS lookups when rendering Helm
	// templates. This is disabled by default, as it can be a security risk.
	//
	// Ref: https://github.com/helm/helm/security/advisories/GHSA-pwcw-6f5g-gxf8
	AllowDNSLookups = "AllowDNSLookups"

	// OOMWatch enables the OOM watcher, which will gracefully shut down the controller
	// when the memory usage exceeds the configured limit. This is disabled by default.
	OOMWatch = "OOMWatch"

	// AdoptLegacyReleases enables the adoption of the historical Helm release
	// based on the status fields from a v2beta1 HelmRelease object.
	// This is enabled by default to support an upgrade path from v2beta1 to v2
	// without the need to upgrade the Helm release. But it can be disabled to
	// avoid potential abuse of the adoption mechanism.
	//
	// Ignored from v1.5.0, prints a warning if set.
	AdoptLegacyReleases = "AdoptLegacyReleases"

	// DisableChartDigestTracking disables the tracking of digest changes
	// for Helm OCI charts. When enabled, the controller will not trigger
	// a Helm release upgrade if the chart version stays the same, but its
	// digest changes. When enabled, the controller will not
	// append the digest to the chart version in Chart.yaml.
	DisableChartDigestTracking = "DisableChartDigestTracking"

	// UseHelm3Defaults makes the controller use the Helm 3 default behaviors
	// when defaults are used.
	UseHelm3Defaults = "UseHelm3Defaults"

	// CancelHealthCheckOnNewRevision controls whether ongoing health checks
	// should be cancelled when a new reconciliation is triggered for the
	// same HelmRelease, regardless of the reason. The name does not match
	// this behavior exactly for historical reasons.
	//
	// When enabled, if a new reconciliation request is detected while waiting
	// for resources to become ready, the current health check will be cancelled
	// to allow immediate processing of the new reconciliation request. This can
	// help avoid getting stuck on failing deployments when fixes are available.
	CancelHealthCheckOnNewRevision = "CancelHealthCheckOnNewRevision"

	// DefaultToRetryOnFailure changes the default install/upgrade strategy
	// from RemediateOnFailure to RetryOnFailure when the user has not
	// explicitly configured a strategy. Unlike RemediateOnFailure, which
	// has a retry budget, RetryOnFailure retries indefinitely and
	// auto-clears failures on success, providing better UX especially
	// when CancelHealthCheckOnNewRevision is enabled.
	DefaultToRetryOnFailure = "DefaultToRetryOnFailure"
)

Variables

This section is empty.

Functions

func Disable

func Disable(feature string)

Disable disables the specified feature. If the feature is not present, it's a no-op.

func Enabled

func Enabled(feature string) (bool, error)

Enabled verifies whether the feature is enabled or not.

This is only a wrapper around the Enabled func in pkg/runtime/features, so callers won't need to import both packages for checking whether a feature is enabled.

func FeatureGates

func FeatureGates() (map[string]bool, map[string]string)

FeatureGates contains a list of all supported feature gates and their default values.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL