Skip to content

Releases: fluxcd/flux2

v2.6.3

27 Jun 11:07
v2.6.3
bda4c81
Compare
Choose a tag to compare

Highlights

Flux v2.6.3 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.

Fixes:

  • Fix for rsa-sha2-512 and rsa-sha2-256 algorithms not being prioritized for ssh-rsa host keys in source-controller, image-automation-controller and Flux CLI bootstrap.

Components changelog

CLI changed

Full Changelog: v2.6.2...v2.6.3

v2.6.2

16 Jun 12:24
v2.6.2
a48f81a
Compare
Choose a tag to compare

Highlights

Flux v2.6.2 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.

Fixes:

  • Fix authentication for flux push artifact --provider=azure on Azure DevOps runners.
  • Fix OIDC authentication for Amazon ECR Public in source-controller and image-reflector-controller.
  • Fix knownhosts key mismatch regression bug in the Flux CLI, source-controller and image-automation-controller.

Components changelog

CLI changelog

  • [release/v2.6.x] fix: Allow Azure CLI calls in flux push artifact --provider azure on DevOps runners by @fluxcdbot in #5396
  • [release/v2.6.x] Fix knownhosts key mismatch regression bug by @fluxcdbot in #5405
  • [release/v2.6.x] Update toolkit components by @fluxcdbot in #5410

Full Changelog: v2.6.1...v2.6.2

v2.6.1

02 Jun 06:24
v2.6.1
b73c7f7
Compare
Choose a tag to compare

Highlights

Flux v2.6.1 is a patch release that comes with various fixes. Users are encouraged to upgrade for the best experience.

Fixes:

  • Fix a bug introduced in image-reflector-controller v0.35.0 that was causing spurious error events for policies during image repository reconciliation.
  • Fix excessive logging in image-reflector-controller after a restart when the image tags cache is empty.

Components changelog

  • image-reflector-controller v0.35.1

CLI changelog

  • [release/v2.6.x] Update image-reflector-controller to v0.35.1 by @fluxcdbot in #5382
  • [release/v2.6.x] Add digest pinning to image automation testing by @fluxcdbot in #5384

Full Changelog: v2.6.0...v2.6.1

v2.6.0

29 May 13:11
v2.6.0
4c66d37
Compare
Choose a tag to compare

Highlights

Flux v2.6.0 is a feature release. Users are encouraged to upgrade for the best experience.

For a compressive overview of new features and API changes included in this release, please refer to the Announcing Flux 2.6 GA blog post.

Overview of the new features:

  • General availability release for the Flux OCI Artifacts APIs and flux artifact commands
  • Support for OCI digests pinning (ImagePolicy, ImageUpdateAutomation)
  • Object-level workload identity authentication (OCIRepository, ImageRepository, Kustomization, Alert Provider)
  • Cache registry credentials for cloud providers (OCIRepository, ImageRepository)
  • Git HTTP/S Mutual TLS authentication (GitRepository, ImageUpdateAutomation)
  • Support for sparse checkout (GitRepository)
  • Support for GitHub App authentication (Alert Provider)
  • Support for managed Identity authentication to Azure Event Hub (Alert Provider)
  • Customize the ID of the Git commit status with CEL expressions (Alert Provider)
  • WaitForTermination deletion policy (Kustomization)
  • DisableChartDigestTracking feature gate (HelmRelease)

❤️ Big thanks to all the Flux contributors that helped us with this release!

Kubernetes compatibility

This release is compatible with the following Kubernetes versions:

Kubernetes version Minimum required
v1.31 >= 1.31.0
v1.32 >= 1.32.0
v1.33 >= 1.33.0

Note

Note that the Flux project offers support only for the latest three minor versions of Kubernetes.
Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as
ControlPlane that provide enterprise support for Flux.

OpenShift compatibility

Flux can be installed on Red Hat OpenShift cluster directly from OperatorHub using Flux Operator.
The operator allows the configuration of Flux multi-tenancy lockdown, network policies, persistent storage, sharding, vertical scaling and the synchronization of the cluster state from Git repositories, OCI artifacts, and S3-compatible storage.

Upgrade procedure

Upgrade Flux from v2.5.0 to v2.6.0 by following the upgrade guide.

To upgrade the APIs, make sure the new CRDs and controllers are deployed, and then change the manifests in Git:

  1. Set apiVersion: source.toolkit.fluxcd.io/v1 in the YAML files that contain OCIRepository definitions.
  2. Add an annotation api.fluxcd.io/upgrade: "v2.6.0" to the OCIRepository resources. (this is not required if Flux Operator is used for upgrade)
  3. Commit, push, and reconcile the API version changes.

Bumping the APIs version in manifests can be done gradually.
It is advised to not delay this procedure as the deprecated versions will be removed after 6 months.

Components changelog

New Documentation

What's Changed

New Contributors

Full Changelog: v2.5.0...v2.6.0

v2.5.1

25 Feb 16:26
v2.5.1
8d5f40d
Compare
Choose a tag to compare

Highlights

Flux v2.5.1 is a patch release which comes with various fixes. Users are encouraged to upgrade for the best experience.

Fixes:

  • Fix a bug introduced in kustomize-controller v1.5.0 that was causing spurious logging for deprecated API versions and health check failures.
  • Sanitize the kustomize-controller logs when encountering errors during SOPS decryption.

Components changelog

CLI Changelog

v2.5.0

20 Feb 14:35
v2.5.0
af67405
Compare
Choose a tag to compare

Highlights

Flux v2.5.0 is a feature release. Users are encouraged to upgrade for the best experience.

For a compressive overview of new features and API changes included in this release,
please refer to the Announcing Flux 2.5 GA blog post.

Overview of the new features:

  • Support for GitHub App authentication (GitRepository and ImageUpdateAutomation API)
  • Custom Health Checks using CEL (Kustomization API)
  • Fine-grained control of garbage collection (Kustomization API)
  • Enable decryption of secrets generated by Kustomize components (Kustomization API)
  • Support for custom event metadata from annotations (Alert API)
  • Git commit status updates for Flux Kustomizations with OCIRepository sources (Alert API)
  • Resource filtering using CEL for webhook receivers (Receiver API)
  • Debug commands for Flux Kustomizations and HelmReleases (Flux CLI)

❤️ Big thanks to all the Flux contributors that helped us with this release!

Kubernetes compatibility

This release is compatible with the following Kubernetes versions:

Kubernetes version Minimum required
v1.30 >= 1.30.0
v1.31 >= 1.31.0
v1.32 >= 1.32.0

Note

Note that the Flux project offers support only for the latest three minor versions of Kubernetes.
Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as
ControlPlane that provide enterprise support for Flux.

OpenShift compatibility

Flux can be installed on Red Hat OpenShift cluster directly from OperatorHub using
Flux Operator.
The operator allows the configuration of Flux multi-tenancy lockdown, network policies,
persistent storage, sharding, vertical scaling and the synchronization
of the cluster state from Git repositories, OCI artifacts and S3-compatible storage.

Upgrade procedure

Upgrade Flux from v2.4.0 to v2.5.0 by following the upgrade guide.

There are no new API versions in this release, so no changes are required in the YAML manifests containing Flux resources.

Components changelog

CLI Changelog

v2.4.0

30 Sep 16:48
v2.4.0
5350425
Compare
Choose a tag to compare

Highlights

Flux v2.4.0 is a feature release. Users are encouraged to upgrade for the best experience.

For a comprehensive overview of new features and API changes included in this release, please refer to the Announcing Flux 2.4 GA blog post.

This release marks the General Availability (GA) of Flux Bucket API. The Bucket v1 API comes with new features including: proxy support, mTLS and custom STS configuration for AWS S3 and MinIO LDAP authentication.

The GitRepository v1 API gains support for OIDC authentication. Starting with this version, you can authenticate against Azure DevOps repositories using AKS Workload Identity.

The OCIRepository v1beta2 API gains support for proxy configuration thus allowing dedicated HTTP/S Proxy authentication on multi-tenant Kubernetes clusters.

The HelmRelease v2 API gains support for disabling JSON schema validation of the Helm release values during installation and upgrade. And allows adopting existing Kubernetes resources during Helm release installation.

The Flux controllers are now built with Go 1.23 and their dependencies have been updated to Kubernetes 1.31, Helm 3.16, SOPS 3.9 Cosign 2.4 and Notation 1.2.

❤️ Big thanks to all the Flux contributors that helped us with this release!

Kubernetes compatibility

This release is compatible with the following Kubernetes versions:

Kubernetes version Minimum required
v1.29 >= 1.29.0
v1.30 >= 1.30.0
v1.31 >= 1.31.0

Note

Note that the Flux project offers support only for the latest three minor versions of Kubernetes.
Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as
ControlPlane that provide enterprise support for Flux.

OpenShift compatibility

Flux can be installed on Red Hat OpenShift cluster directly from OperatorHub using Flux Operator.
The operator allows the configuration of Flux multi-tenancy lockdown, network policies, persistent storage, sharding, vertical scaling and the synchronization of the cluster state from Git repositories, OCI artifacts and S3-compatible storage.

API changes

Bucket v1

The Bucket kind was promoted from v1beta2 to v1 (GA).

The v1 API is backwards compatible with v1beta2.

New fields:

  • .spec.proxySecretRef allows configuring HTTP/S Proxy authentication for the S3-compatible storage service.
  • .spec.certSecretRef allows custom TLS client certificate and CA for secure communication with the S3-compatible storage service.
  • .spec.sts allows custom STS configuration for AWS S3 and MinIO LDAP authentication.

GitRepository v1

The GitRepository kind gains new optional fields with no breaking changes.

New fields:

  • .spec.provider allows specifying an OIDC provider used for authentication purposes. Currently, only the azure provider is supported.

OCIRepository v1beta2

The OCIRepository kind gains new optional fields with no breaking changes.

New fields:

  • .spec.proxySecretRef allows configuring HTTP/S Proxy authentication for the container registry service.

HelmRelease v2

The HelmRelease kind gains new optional fields with no breaking changes.

New fields:

  • .spec.install.disableSchemaValidation allows disabling the JSON schema validation of the Helm release values during installation.
  • .spec.upgrade.disableSchemaValidation allows disabling the JSON schema validation of the Helm release values during upgrade.

Upgrade procedure

Upgrade Flux from v2.3.0 to v2.4.0 either by rerunning bootstrap or by using the Flux GitHub Action.

To upgrade the APIs, make sure the new CRDs and controllers are deployed, and then change the manifests in Git:

  1. Set apiVersion: source.toolkit.fluxcd.io/v1 in the YAML files that contain Bucket definitions.
  2. Commit, push and reconcile the API version changes.

Bumping the APIs version in manifests can be done gradually.
It is advised to not delay this procedure as the deprecated versions will be removed after 6 months.

Components changelog

New Documentation

CLI Changelog

v2.3.0

13 May 13:55
v2.3.0
896e0fa
Compare
Choose a tag to compare

Highlights

Flux v2.3.0 is a feature release. Users are encouraged to upgrade for the best experience.

For a comprehensive overview of new features and API changes included in this release, please refer to the Announcing Flux 2.3 GA blog post.

This release marks the General Availability (GA) of Flux Helm features and APIs, including helm-controller, the HelmRelease, HelmChart, and HelmRepository APIs.

The HelmRepository v2 API comes with new features, such as the ability to reference Helm charts from OCIRepository sources, reuse existing HelmChart resources, and verify the integrity of Helm chart artifacts signed with Notary Notation.

❤️ Big thanks to all the Flux contributors that helped us with this release!

Kubernetes compatibility

This release is compatible with the following Kubernetes versions:

Kubernetes version Minimum required
v1.28 >= 1.28.0
v1.29 >= 1.29.0
v1.30 >= 1.30.0

Note

Note that the Flux project offers support only for the latest three minor versions of Kubernetes.
Backwards compatibility with older versions of Kubernetes and OpenShift is offered by vendors such as
ControlPlane that provide enterprise support for Flux.

API changes

HelmRelease v2

The HelmRelease kind was promoted from v2beta2 to v2 (GA).

The v2 API is backwards compatible with v2beta2, with the exception of the deprecated fields which have been removed.

Removed fields:

  • .spec.chart.spec.valuesFile replaced by .spec.chart.spec.valuesFiles.
  • .spec.postRenderers.kustomize.patchesJson6902 replaced by .spec.postRenderers.kustomize.patches.
  • .spec.postRenderers.kustomize.patchesStrategicMerge replaced by .spec.postRenderers.kustomize.patches.
  • .status.lastAppliedRevision replaced by .status.history.chartVersion.

New fields:

  • .spec.chartRef allows referencing chart artifacts from OCIRepository and HelmChart objects.
  • .spec.chart.spec.ignoreMissingValuesFiles allows ignoring missing values files instead of failing to reconcile.

HelmChart v1

The HelmChart kind was promoted from v1beta2 to v1 (GA).

The v1 API is backwards compatible with v1beta2, with the exception of the deprecated fields which have been removed.

Removed fields:

  • .spec.valuesFile replaced by .spec.chart.valuesFiles.

New fields:

  • .spec.ignoreMissingValuesFiles allows ignoring missing values files instead of failing to reconcile.
  • .spec.verify.provider: notation verify the signature of a Helm OCI artifacts using Notation trust policy and CA certificate.

HelmRepository v1

The HelmRepository kind was promoted from v1beta2 to v1 (GA).

The v1 API is backwards compatible with v1beta2.

OCIRepository v1beta2

The OCIRepository kind gains new optional fields with no breaking changes.

New fields:

  • .spec.ref.semverFilter allows filtering the tags based on regular expressions before applying the semver range.
  • .spec.verify.provider: notation verify the signature of OCI artifacts using Notation trust policy and CA certificate.

Kustomization v1

The Flux Kustomization kind gains new optional fields with no breaking changes.

New fields:

  • .spec.namePrefix allows setting a name prefix for the generated resources.
  • .spec.nameSuffix allows setting a name suffix for the generated resources.

ImageUpdateAutomation v1beta2

The ImageUpdateAutomation kind was promoted from v1beta1 to v1beta2.

The v1beta2 API is backwards compatible with v1beta1.

Deprecated fields:

  • Updated template data has been deprecated in favour of Changed that is designed to accommodate for all the types of updates made.

New fields:

  • .spec.policySelector allows filtering ImagePolicy based on labels.

Receiver v1

The Receiver kind gains new optional fields with no breaking changes.

New fields:

  • .spec.type: cdevents allows receiving, validating and filtering of CDEvents.

Upgrade procedure

Upgrade Flux from v2.x to v2.3.0 either by rerunning bootstrap or by using the Flux GitHub Action.

For more details, please refer to the upgrade guide from the Announcing Flux 2.3 GA blog post.

Components changelog

New Documentation

CLI Changelog

Read more

v2.2.3

05 Feb 14:44
v2.2.3
5346846
Compare
Choose a tag to compare

Highlights

Flux v2.2.3 is a patch release which comes with various fixes and improvements. Users are encouraged to upgrade for the best experience.

💡 For upgrading to Flux v2.2, please see the procedure documented in 2.2.0.

This release updates the Kubernetes dependencies to v1.28.6 and various other dependencies to their latest version to patch upstream CVEs.

All controllers are built with Go 1.21.6 using Alpine Linux 3.19.1 base image.

Note

Due to breaking changes in Helm v3.14.0, the helm-controller version included in this patch release comes with Helm SDK v3.13.3.
A preview build of the helm-controller with the latest Helm SDK is available at helm-controller#879.

Fixes:

  • Reconciling empty directories and directories without Kubernetes manifests no longer results in an error. This regressing bug was introduced with the kustomize-controller upgrade to Kustomize v5.3 and has been fixed in this patch release.
  • The regression due to which Roles and ClusterRoles with aggregated roles were continuous reconciled by kustomize-controller has been fixed.
  • Fix the Git revision displaying when notification-controller sends alerts to Grafana.
  • The HelmRelease status reporting has been improved by ensuring that the stale failure conditions get updated after failure recovery.

See the components changelog for a full list of bug fixes.

Components changelog

CLI Changelog

v2.2.2

19 Dec 17:49
v2.2.2
5c5c15e
Compare
Choose a tag to compare

Highlights

Flux v2.2.2 is a patch release that addresses an issue with the label selector sharding functionality in the helm-controller. Users are encouraged to upgrade for the best experience.

💡 For upgrading to Flux v2.2, please see the procedure documented in 2.2.0.

Components changelog

CLI Changelog

  • PR #4505 - @hiddeco - Update helm-controller to v0.37.2 in tests
  • PR #4501 - @fluxcdbot - Update toolkit components
  • PR #4499 - @stuebingerb - Fix typo in Git bootstrap
  • PR #4495 - @dependabot[bot] - build(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0 in /tests/integration
  • PR #4494 - @dependabot[bot] - build(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0
  • PR #4493 - @dependabot[bot] - build(deps): bump golang.org/x/crypto from 0.16.0 to 0.17.0 in /tests/azure
  • PR #4491 - @dependabot[bot] - build(deps): bump the ci group with 3 updates