Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update dependency fluxcd/flux2 #19

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 5, 2023

This PR contains the following updates:

Package Update Change
fluxcd/flux2 minor v2.1.2 -> v2.4.0
ghcr.io/fluxcd/helm-controller minor v0.36.2 -> v0.37.4
ghcr.io/fluxcd/image-automation-controller minor v0.36.1 -> v0.39.0
ghcr.io/fluxcd/image-reflector-controller minor v0.30.0 -> v0.33.0
ghcr.io/fluxcd/kustomize-controller minor v1.1.1 -> v1.4.0
ghcr.io/fluxcd/notification-controller minor v1.1.0 -> v1.4.0
ghcr.io/fluxcd/source-controller minor v1.1.2 -> v1.4.1

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

fluxcd/flux2 (fluxcd/flux2)

v2.4.0

Compare Source

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

Compare Source

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

v2.2.3

Compare Source

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

Compare Source

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

v2.2.1

Compare Source

Highlights

Flux v2.2.1 is a patch release that comes with fixes to API backwards compatibility.
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 version was tested with the latest Kubernetes release, and extends Flux support to Kubernetes v1.29.

The Helm SDK was updated to the latest version, v3.13.3.

Logging in kustomize-controller and helm-controller has been improved to provide faster feedback on any HTTP errors encountered while fetching artifacts from source-controller.

Components changelog
CLI Changelog

v2.2.0

Compare Source

Highlights

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

The Flux CLI and controllers have been updated to Kustomize v5.3.0 and Kubernetes v1.28.4.

Flux helm-controller's reconciliation model underwent a significant overhaul, addressing persistent issues such as the automatic recovery of releases stuck in a pending state. In addition, it improves the observability of the release status, and it introduces the ability to enable drift detection on a per-object basis. For more details on the helm-controller improvements, please see the Announcing Flux 2.2 GA blog post.

The Flux CLI can now be used to force or reset the reconciliation state of a HelmRelease v2beta2 object using flux reconcile hr --force and flux reconcile hr --reset.

Flux CLI comes with support for bootstrapping Gitea repositories and adds guardrails to flux install and flux bootstrap to protect users from destructive operations. The flux version and flux check commands now print the Flux distribution version deployed on the cluster.

The Flux alerting capabilities have been extended with NATS and Bitbucket Server & Data Center support.

Starting with this release, Flux minor versions are benchmark to measure the Mean Time To Production (MTTP). The results for this version can be found at
github.com/fluxcd/flux-benchmark.

❤️ 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.26 >= 1.26.0
v1.27 >= 1.27.1
v1.28 >= 1.28.0

Note that Flux may work on older versions of Kubernetes e.g. 1.25, but we don't recommend running end-of-life versions in production nor do we offer support for these versions.

API changes
HelmRelease v2beta2

The HelmRelease kind was promoted from v2beta1 to v2beta2.

The v2beta2 API is backwards compatible with v2beta1, the v2beta1 API is deprecated and will be removed in a future release.

Deprecated fields:

  • The .patchesStrategicMerge and .patchesJson6902 Kustomize post-rendering fields have been deprecated in favor of .patches.
  • The .status.lastAppliedRevision and .status.lastReleaseRevision fields have been deprecated in favor of .status.history.
  • The .status.lastAttemptedValuesChecksum has been deprecated in favor of .status.lastAttemptedConfigDigest.

New fields:

  • Drift detection and correction is now enabled on a per-release basis using the .spec.driftDetection.mode field.
  • Ignoring specific fields during drift detection and correction is now supported using the .spec.driftDetection.ignore
  • Helm tests can now be selectively run using the .spec.test.filters field.
  • A history of metadata from Helm releases up to the previous successful release is now available in the .status.history field. This includes any Helm test results when enabled.
  • The .status.lastHandledForceAt and .status.lastHandledResetAt fields have been introduced to track the last time a force upgrade or reset was handled.
Alert and Provider v1beta3

The Alert and Provider kinds were promoted from v1beta2 to v1beta3.

The v1beta3 API is backwards compatible with v1beta2, the .status field was removed making the resources static objects. Any errors encountered while sending notifications are now recorded as Kubernetes Events associated with the Alert objects.

Bucket v1beta2

A new field, .spec.prefix, has been added to the Bucket API, which enables server-side filtering of files if the object's .spec.provider is set to generic, aws or gcp.

OCIRepository and HelmChart v1beta2

Two new fields, .spec.verify.matchOIDCIdentity.issuer and .spec.verify.matchOIDCIdentity.subject have been added to the HelmChart and OCIRepository APIs. If the image has been keylessly signed via Cosign, these fields can be used to verify the OIDC issuer of the Fulcio certificate and the
OIDC identity's subject respectively.

HelmRepository and ImageRepository v1beta2

A new boolean field, .spec.insecure, has been introduced to the
HelmRepository and ImageRepository APIs, which allows connecting to a non-TLS HTTP container registry. For HelmRepositories it is only considered if the object's .spec.type is set to oci.

From this release onwards, HelmRepository objects of type OCI are treated as static objects, i.e. they have an empty status.

Upgrade procedure

Upgrade Flux from v2.x to v2.2.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: helm.toolkit.fluxcd.io/v2beta2 in the YAML files that contain HelmRelease definitions.
  2. Set apiVersion: notification.toolkit.fluxcd.io/v1beta3 in the YAML files that contain Alert and Provider definitions.
  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.

New Documentation
Components changelog
CLI Changelog
fluxcd/helm-controller (ghcr.io/fluxcd/helm-controller)

v0.37.4

Compare Source

Changelog

v0.37.4 changelog

Container images

  • docker.io/fluxcd/helm-controller:v0.37.4
  • ghcr.io/fluxcd/helm-controller:v0.37.4

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.37.3

Compare Source

Changelog

v0.37.3 changelog

Container images

  • docker.io/fluxcd/helm-controller:v0.37.3
  • ghcr.io/fluxcd/helm-controller:v0.37.3

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.37.2

Compare Source

Changelog

v0.37.2 changelog

Container images

  • docker.io/fluxcd/helm-controller:v0.37.2
  • ghcr.io/fluxcd/helm-controller:v0.37.2

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.37.1

Compare Source

Changelog

v0.37.1 changelog

Container images

  • docker.io/fluxcd/helm-controller:v0.37.1
  • ghcr.io/fluxcd/helm-controller:v0.37.1

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.37.0

Compare Source

Changelog

v0.37.0 changelog

Container images

  • docker.io/fluxcd/helm-controller:v0.37.0
  • ghcr.io/fluxcd/helm-controller:v0.37.0

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

fluxcd/image-automation-controller (ghcr.io/fluxcd/image-automation-controller)

v0.39.0

Compare Source

Changelog

v0.39.0 changelog

Container images

  • docker.io/fluxcd/image-automation-controller:v0.39.0
  • ghcr.io/fluxcd/image-automation-controller:v0.39.0

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.38.0

Compare Source

Changelog

v0.38.0 changelog

Container images

  • docker.io/fluxcd/image-automation-controller:v0.38.0
  • ghcr.io/fluxcd/image-automation-controller:v0.38.0

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.37.1

Compare Source

Changelog

v0.37.1 changelog

Container images

  • docker.io/fluxcd/image-automation-controller:v0.37.1
  • ghcr.io/fluxcd/image-automation-controller:v0.37.1

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

v0.37.0

Compare Source

Changelog

v0.37.0 changelog

Container images

  • docker.io/fluxcd/image-automation-controller:v0.37.0
  • ghcr.io/fluxcd/image-automation-controller:v0.37.0

Supported architectures: linux/amd64, linux/arm64 and linux/arm/v7.

The container images are built on GitHub hosted runners and are signed with cosign and GitHub OIDC.
To verify the images and their provenance (SLSA level 3), please see the security documentation.

fluxcd/image-reflector-controller (ghcr.io/fluxcd/image-reflector-controller)

v0.33.0

Compare Source

Changelog

v0.33.0 changelog

Container images

  • `docker.io/fluxcd/image-reflec

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from d892690 to 2417490 Compare December 5, 2023 22:08
@renovate renovate bot changed the title Update ghcr.io/fluxcd/source-controller Docker tag to v1.2.0 Update ghcr.io/fluxcd/notification-controller Docker tag to v1.2.0 Dec 5, 2023
@renovate renovate bot changed the title Update ghcr.io/fluxcd/notification-controller Docker tag to v1.2.0 Update ghcr.io/fluxcd/notification-controller Docker tag to v1.2.1 Dec 8, 2023
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from 2417490 to ef2a089 Compare December 8, 2023 12:50
@renovate renovate bot changed the title Update ghcr.io/fluxcd/notification-controller Docker tag to v1.2.1 Update ghcr.io/fluxcd/image-reflector-controller Docker tag Dec 8, 2023
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from ef2a089 to dcf3dfe Compare December 8, 2023 15:23
@renovate renovate bot changed the title Update ghcr.io/fluxcd/image-reflector-controller Docker tag Update ghcr.io/fluxcd/image-reflector-controller Docker tag to v0.31.0 Dec 9, 2023
@renovate renovate bot changed the title Update ghcr.io/fluxcd/image-reflector-controller Docker tag to v0.31.0 Update ghcr.io/fluxcd/image-reflector-controller Docker tag Dec 9, 2023
@renovate renovate bot changed the title Update ghcr.io/fluxcd/image-reflector-controller Docker tag Update ghcr.io/fluxcd/image-automation-controller Docker tag Dec 11, 2023
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch 2 times, most recently from 85ca38d to af53cb3 Compare December 11, 2023 18:32
@renovate renovate bot changed the title Update ghcr.io/fluxcd/image-automation-controller Docker tag Update ghcr.io/fluxcd/helm-controller Docker tag Dec 12, 2023
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from af53cb3 to 21566a1 Compare December 12, 2023 10:49
@renovate renovate bot changed the title Update ghcr.io/fluxcd/helm-controller Docker tag Update dependency fluxcd/flux2 Dec 12, 2023
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch 4 times, most recently from 85dc392 to 3cf6cb3 Compare December 19, 2023 19:49
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch 4 times, most recently from adb2989 to ed730ab Compare February 5, 2024 15:50
@renovate renovate bot changed the title Update dependency fluxcd/flux2 Update dependency fluxcd/flux2 to v2.2.3 Feb 17, 2024
@renovate renovate bot changed the title Update dependency fluxcd/flux2 to v2.2.3 Update dependency fluxcd/flux2 Feb 17, 2024
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from ed730ab to a10b72d Compare April 4, 2024 17:16
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from a10b72d to e46492d Compare May 13, 2024 16:11
@renovate renovate bot force-pushed the renovate/clusters/kind-kind/flux-system/gotk-components.yaml branch from e46492d to 4a3b890 Compare September 30, 2024 18:22
@renovate renovate bot changed the title Update dependency fluxcd/flux2 Update dependency fluxcd/flux2 to v2.4.0 Oct 15, 2024
@renovate renovate bot changed the title Update dependency fluxcd/flux2 to v2.4.0 Update dependency fluxcd/flux2 Oct 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants