Skip to content

Releases: fluxcd/flux2

v2.0.0-rc.5

01 Jun 11:51
v2.0.0-rc.5
c0fa6e6
Compare
Choose a tag to compare

Highlights

This is the 5th release candidate of Flux v2.0 GA. Users are advised to upgrade from older versions to v2.0.0-rc.5 as soon as possible.

Flux v2.0.0-rc.5 addresses a regression that was introduced in v2.0.0-rc.4. This regression caused a disruption in the compatibility with Git servers utilizing v2 of the wire protocol, such as Azure Devops and AWS CodeCommit.

💡 For upgrading from v0.x, please see the procedure documented in RC.1.

⚠️ Note that v2.0.0-rc.4 updated all components to use Kustomize v5 and controller-runtime v0.15, both of which contain breaking changes.

Fixes and improvements

  • Fix support for Git v2 servers.
  • Suppress misleading error message [controller-runtime] log.SetLogger(...) was never called... (CLI).
  • Include both revision and token in event metadata, if present (helm-controller).
  • Update source-controller to patch a vulnerability in Sigstore (CVE-2023-33199)

Components Changelog

CLI Changelog

  • PR #3943 - @fluxcdbot - Update toolkit components, and git/go-git to v0.12.0
  • PR #3940 - @somtochiama - Set controller runtime logger in Azure e2e tests
  • PR #3938 - @aryan9600 - e2e: Run e2e Azure tests for PRs to main if tests or wofklow changes
  • PR #3932 - @aryan9600 - Set controller-runtime logger to a null logger

v2.0.0-rc.4

29 May 11:54
v2.0.0-rc.4
9ee23a9
Compare
Choose a tag to compare

Highlights

This is the 4nd release candidate of Flux v2.0 GA. Users are advised to upgrade from older versions to v2.0.0-rc.4 as soon as possible.

Flux v2.0.0-rc.4 comes with support for Kustomize 5.0, Helm 3.12 and Cosign 2.0.

💡 For upgrading from v0.x, please see the procedure documented in RC.1.

⚠️ Note that Kustomize v5 contains breaking changes, please consult their changelog for more details.

⚠️ The GitOps Toolkit and the Flux controllers have been updated to controller-runtime v0.15 which contains breaking changes that could affect 3rd-party controllers that integrate with Flux.

Fixes and improvements

  • Full support for Azure Workload Identity when connecting Flux to Azure Container Registry, Azure Blog Storage and Azure Key Vault.
  • New command flux reconcile source chart for pulling Helm OCI charts on-demand from container registries (CLI).
  • Retry OCI operations on network errors for flux push artifact (CLI).
  • Support annotated Git tags with .spec.ref.name in GitRepository (source-controller).
  • Fix pulling Helm OCI charts from ACR when using Azure OIDC (source-controller).
  • Fix incorrect rate limiting for HelmRelease events (notification-controller).
  • All components have been updated to patch vulnerabilities in Docker (CVE-2023-28840, CVE-2023-28841, CVE-2023-28842) and Sigstore (CVE-2023-30551).

Components changelog

CLI Changelog

v2.0.0-rc.3

12 May 13:13
v2.0.0-rc.3
e475a22
Compare
Choose a tag to compare

Highlights

This is the 3rd release candidate of Flux v2.0 GA. Users are advised to upgrade from v0.41 and older versions to v2.0.0-rc.3 as soon as possible.

Flux v2.0.0-rc.3 comes with security improvements, new features and fixes to issues reported for RC.2.

💡 For upgrading from v0.x, please see the procedure documented in RC.1.

⚠️ Note that Kubernetes 1.27.0 contains a regression bug that affects Flux, it is recommended to upgrade Kubernetes to 1.27.1 or newer.

Fixes and improvements

  • Fix bootstrap on GKE (RC.2 regression due to insufficient quota for critical pods).
  • All controller base images have been updated to Alpine 3.18.
  • All components have been updated to patch CVE-2023-2253 and CVE-2023-1732 (note that Flux is not affected, these CVEs are for packages used in tests).
  • Verify artifacts integrity, issue warning events and remove tempered artifacts from storage forcing a re-download (source-controller).
  • Files with executable permissions are now archived with their mode set to 0o744, allowing CI system to run them (source-controller).
  • The Alert v1beta2 API has a new optional field .spec.eventMetadata that allows users to enrich the alerts with information about the cluster name, region, environment, etc. (notification-controller).
  • Improve the detection of values changes for HelmReleases by stable sorting them by key (helm-controller).

Components changelog

CLI Changelog

v2.0.0-rc.2

09 May 17:01
v2.0.0-rc.2
9a8944d
Compare
Choose a tag to compare

Highlights

This is the 2nd release candidate of Flux v2.0 GA. Users are advised to upgrade from v0.41 to v2.0.0-rc.2 as soon as possible.

Flux v2.0.0-rc.2 comes with fixes to issues reported for RC.1 and performance improvements. Starting with this version, source-controller, kustomize-controller and helm-controller pods are marked as system-cluster-critical. This priority class will reduce the chances of Flux controllers being evicted before other non-critical workloads and prevents the pods from being permanently unavailable.

💡 For upgrading from v0.x, please see the procedure documented in RC.1.

⚠️ Note that Kubernetes 1.27.0 contains a regression bug that affects Flux, it is recommended to upgrade Kubernetes to 1.27.1 or newer.

Fixes and improvements

  • Fix bootstrap for BitBucket Server (CLI).
  • Fix secrets decryption when using Azure Key Vault (kustomize-controller).
  • Fix drift detection for renamed HelmReleases (helm-controller).
  • Improve performance when handling webhook receivers (notification-controller).
  • The Alert v1beta2 API has a new optional field .spec.inclusionList for fine-grained control over events filtering (notification-controller).
  • The deprecated field .status.url was removed from the Receiver v1 API (notification-controller).
  • Add support for commit signing using OpenPGP keys with passphrases (image-automation-controller).

Components changelog

CLI Changelog

  • PR #3860 - @bigkevmcd - e2e: Add summary to Azure Alert
  • PR #3858 - @fluxcdbot - Update toolkit components
  • PR #3857 - @talife - Fix autocompletion for image repository reconcile
  • PR #3855 - @dependabot[bot] - build(deps): bump peter-evans/create-pull-request from 5.0.0 to 5.0.1
  • PR #3854 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.3.2 to 2.3.3
  • PR #3853 - @dependabot[bot] - build(deps): bump anchore/sbom-action from 0.14.1 to 0.14.2
  • PR #3849 - @makkes - Update fluxcd/go-git-providers to v0.15.3
  • PR #3838 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.3.0 to 2.3.2
  • PR #3837 - @dependabot[bot] - build(deps): bump sigstore/cosign-installer from 3.0.2 to 3.0.3
  • PR #3833 - @matheuscscp - Add OCI provider option to create Helm source command
  • PR #3830 - @cuishuang - misc: fix some comments
  • PR #3827 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.12 to 2.3.0
  • PR #3822 - @Hey - Fix outdated Loki Helm values URL
  • PR #3821 - @makkes - Fix bootstrap for Bitbucket Server
  • PR #3805 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.11 to 2.2.12
  • PR #3804 - @dependabot[bot] - build(deps): bump actions/checkout from 3.5.0 to 3.5.2
  • PR #3802 - @stefanprodan - Set priority class for the critical Flux components
  • PR #3797 - @makkes - better messaging for pull artifact command
  • PR #3796 - @fluxcdbot - Update helm-controller to v0.32.2
  • PR #3795 - @stefanprodan - Run conformance tests for Kubernetes 1.27
  • PR #3783 - @aryan9600 - Clean directory before cloning git repo
  • PR #3780 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.9 to 2.2.11
  • PR #3779 - @dependabot[bot] - build(deps): bump peter-evans/create-pull-request from 4.2.4 to 5.0.0
  • PR #3778 - @dependabot[bot] - build(deps): bump sigstore/cosign-installer from 3.0.1 to 3.0.2
  • PR #3768 - @relu - Fix publishing pre-release versions to AUR
  • PR #3764 - @somtochiama - Add label selector flag to get cmd

v2.0.0-rc.1

06 Apr 11:58
v2.0.0-rc.1
c350e30
Compare
Choose a tag to compare

Highlights

This is the first release candidate of Flux v2.0 GA 🎉. Users are encouraged to upgrade for the best experience.

Flux v2.0.0-rc.1 comes with the promotion of the GitOps related APIs to v1 and adds horizontal scaling & sharding capabilities to Flux controllers.

In addition, RC.1 comes with support for auth with Azure Workload Identity when pulling OCI artifacts from ACR and when decrypting secret with Azure Vault. Also, Bootstrap for GitLab was extended with support for generating GitLab Deploy Tokens.

❤️ Big thanks to all the Flux contributors that helped us with this release!
👏 And a special shoutout to the GitLab team for their first contribution to Flux!

API changes

GitRepository v1

The GitRepository kind was promoted from v1beta2 to v1 (GA) and deprecated fields were removed.

The v1 API is backwards compatible with v1beta2, except for the following:

  • the deprecated field .spec.gitImplementation was removed
  • the unused field .spec.accessFrom was removed
  • the deprecated field .status.contentConfigChecksum was removed
  • the deprecated field .status.artifact.checksum was removed
  • the .status.url was removed in favor of the absolute .status.artifact.url

Kustomization v1

The Kustomization kind was promoted from v1beta2 to v1 (GA) and deprecated fields were removed.

A new optional field .spec.commonMetadata was added to the API for setting labels and/or annotations to all resources part of a Kustomization.

The v1 API is backwards compatible with v1beta2, except for the following:

  • the deprecated field .spec.validation was removed
  • the deprecated field .spec.patchesStrategicMerge was removed (replaced by .spec.patches)
  • the deprecated field .spec.patchesJson6902 was removed (replaced by .spec.patches)

Receiver v1

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

The v1 API now supports triggering the reconciliation of multiple resources using .spec.resources.matchLabels.

The v1 API is backwards compatible with v1beta2, no fields were removed.

Upgrade procedure

Upgrade Flux from v0.x to v2.0.0-rc-1 either by rerunning flux bootstrap or by using the Flux GitHub Action.

To upgrade the APIs from v1beta2, after deploying the new CRDs and controllers, change the manifests in Git:

  1. Remove the deprecated fields from the GitRepository and Kustomization definitions.
  2. Commit, push and reconcile the fields removal changes.
  3. Set apiVersion: source.toolkit.fluxcd.io/v1 in the YAML files that contain GitRepository .
  4. Set apiVersion: kustomize.toolkit.fluxcd.io/v1 in the YAML files that contain Kustomization .
  5. Set apiVersion: notification.toolkit.fluxcd.io/v1 in the YAML files that contain Receiver definitions.
  6. 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 beta
versions will be removed after 6 months.

⚠️ Note that this release updates the major version of the Flux Go Module to v2. Please update your go.mod to require github.com/fluxcd/flux2/v2, see pkg.go.dev for the documentation of the module.

New Documentation

Components changelog

CLI Changelog

  • PR #3763 - @souleb - Add the possibility to ignore files with build and diff Kustomization
  • PR #3758 - @stefanprodan - Release Flux v2.0.0-rc.1
  • PR #3762 - @dependabot[bot] - build(deps): bump github.com/docker/docker from 23.0.1 to 23.0.3
  • PR #3745 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.8 to 2.2.9
  • PR #3744 - @dependabot[bot] - build(deps): bump anchore/sbom-action from 0.13.4 to 0.14.1
  • PR #3730 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.7 to 2.2.8
  • PR #3729 - @dependabot[bot] - build(deps): bump actions/checkout from 3.4.0 to 3.5.0
  • PR #3728 - @dependabot[bot] - build(deps): bump anchore/sbom-action from 0.13.3 to 0.13.4
  • PR #3721 - @yiannistri - fix: Avoid printing an extra newline when exporting resources
  • PR #3717 - @dependabot[bot] - build(deps): bump google.golang.org/protobuf from 1.29.0 to 1.29.1

v0.41.2

21 Mar 10:10
v0.41.2
dbda8fb
Compare
Choose a tag to compare

Flux v0.41.2 is a patch release which fixes a range of bugs found in the controllers. Please refer to the individual component changelogs for more information.

💡 For more information about other features introduced in v0.41.0, please refer to the changelog for this version.

Components Changelog

CLI Changelog

  • PR #3710 - @hiddeco - tests/azure: update toolkit components
  • PR #3707 - @fluxcdbot - Update toolkit components
  • PR #3706 - @hiddeco - build: update actions/setup-go in workflows
  • PR #3704 - @dependabot[bot] - build(deps): bump peter-evans/create-pull-request from 4.2.3 to 4.2.4
  • PR #3703 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.6 to 2.2.7
  • PR #3701 - @dependabot[bot] - build(deps): bump actions/checkout from 3.3.0 to 3.4.0
  • PR #3685 - @dependabot[bot] - build(deps): bump actions/cache from 3.2.6 to 3.3.0
  • PR #3684 - @dependabot[bot] - build(deps): bump github/codeql-action from 2.2.5 to 2.2.6
  • PR #3683 - @dependabot[bot] - build(deps): bump docker/setup-buildx-action from 2.4.1 to 2.5.0

v0.41.1

10 Mar 15:27
865f172
Compare
Choose a tag to compare

Flux v0.41.1 is a patch release which extends the helm-controller's OOM watch feature introduced in v0.41.0 with support for automatic detection of cgroup v1 paths, and flags to configure alternative paths using --oom-watch-max-memory-path and --oom-watch-current-memory-path.

💡 For more information about other features introduced in v0.41.0, please refer to the changelog for this version.

Components changelog

CLI Changelog

v0.41.0

09 Mar 17:01
af153ea
Compare
Choose a tag to compare

Flux v0.41.0 comes with new features and improvements. Users are encouraged to upgrade for the best experience.

Features and improvements

  • Experimental support of drift detection of Helm releases compared to cluster-state.
  • Improved handling of SIGTERM signals received by the helm-controller, which will now terminate running Helm install or upgrade actions, instead of potentially leaving them in a pending state.
  • Opt-in OOM watcher in helm-controller to handle graceful termination of the controller before it is forcefully killed by Kubernetes' OOM killer.
  • Kubernetes client and Custom Resource Definition life-cycle improvements to reduce the memory consumption of the helm-controller, with observed reductions up to 50%.
  • Opt-in allowance of DNS lookups during the rendering of Helm templates in the helm-controller via feature gate.
  • Optional disabling of the cache of the status poller used to determine the health of the resources applied by the kustomize-controller. This may improve memory usage on large scale clusters at the cost of more direct API calls.
  • Changes to the logging of all controllers to ensure Kubernetes components like the discovery client use the configured logging format.
  • New flux events command to display Kubernetes events for Flux resources, including the events of a referenced resource.
  • Custom annotations can now be set with flux push using --annotations.

New documentation

Components changelog

CLI Changelog

v0.40.2

28 Feb 15:43
2c7d650
Compare
Choose a tag to compare

Flux v0.40.2 is a patch release which includes an update of the notification-controller to prevent an issue with the default API version used for ImageRepositories when no specific version is configured on a Receiver. Users are encouraged to upgrade for the best experience.

⚠️ Note that v0.40.0 contained breaking changes, please refer to the changelog for more information.

Components changelog

CLI Changelog

v0.40.1

23 Feb 14:39
c88a2f4
Compare
Choose a tag to compare

Flux v0.40.1 is a patch release which includes an update of the source-controller to prevent excessive memory usage while reconciling HelmRepository objects. Users are encouraged to upgrade for the best experience.

⚠️ Note that v0.40.0 contained breaking changes, please refer to the changelog for more information.

Components changelog

CLI Changelog