---
title: "Flux Roadmap"
linkTitle: "Roadmap"
description: "Flux and the GitOps Toolkit roadmap."
weight: 90
type: page
---

# Flux Roadmap

{{% alert color="info" title="Production readiness" %}}
The Flux latest [beta and stable APIs](/flux/components/)
(including their reconcilers) are well tested and safe to use in production environments.
The beta APIs will be replaced in time with stable versions.

To learn more about Flux supported versions and release cadence,
please see the [Flux release process](/flux/releases/).
{{% /alert %}}

## Milestones

The Flux project roadmap is divided into milestones representing minor releases,
each with a set of goals and tasks. The milestones marked as **provisional** are
subject to change based on the project's priorities and the community's feedback.

Please note that the Flux maintainers prioritize fixes to defects affecting GA APIs
and security issues over new features. Depending on the volume of incoming issues and
the complexity of the fixes, the roadmap may be adjusted and new features
may be postponed to the next milestone.

### v2.5 (Q1 2025)

**Status**: Completed on 2025-02-20 (v2.5.0 [changelog](https://fluxcd.io/blog/2025/02/flux-v2.5.0/))

The primary goal of this milestone is to integrate GitHub App for Git repositories authentication
and to extend Flux functionality with Common Expression Language(CEL) support.

- **Git integrations**
  - [x] [Support for GitHub App auth in source-controller](https://github.com/fluxcd/source-controller/pull/1647)
  - [x] [Support for GitHub App auth in image-automation-controller](https://github.com/fluxcd/image-automation-controller/pull/780)
  - [x] [Generate GitHub App secrets with the Flux CLI](https://github.com/fluxcd/flux2/pull/5103)

- **Kustomize integrations**
  - [x] [Fine-grained control of garbage collection with `.spec.deletionPolicy`](https://github.com/fluxcd/kustomize-controller/pull/1314)
  - [x] [Enable decryption of secrets generated by Kustomize components](https://github.com/fluxcd/kustomize-controller/pull/1283)
  - [x] [Enable decryption of Kustomize patches](https://github.com/fluxcd/kustomize-controller/pull/1286)
  - [x] [Custom Health Checks using CEL](https://github.com/fluxcd/flux2/pull/5151)

- **Alerting integrations**
  - [x] [Custom Event Metadata from Annotations](https://github.com/fluxcd/flux2/pull/4809)
  - [x] [Support Git commit status updates for OCIRepository](https://github.com/fluxcd/flux2/issues/5148)

- **Webhook integrations**
  - [x] [Implement `Receiver` resource filtering with CEL](https://github.com/fluxcd/notification-controller/pull/948)

- **Troubleshoot helpers**
  - [x] [Implement `flux debug helmrelease --show-values`](https://github.com/fluxcd/flux2/pull/5106)
  - [x] [Implement `flux debug kustomization --show-vars`](https://github.com/fluxcd/flux2/pull/5117)

- **Conformance testing**
  - [x] [End-to-end testing for Kubernetes 1.32](https://github.com/fluxcd/flux2/pull/5111)
  - [x] [End-to-end testing for GitHub App auth](https://github.com/fluxcd/pkg/pull/818)

- **EOL and Deprecations**
  - End support for Flux v2.2.x
  - End support for Kubernetes v1.29.x

### v2.6 (Q2 2025)

**Status**: Completed on 2025-05-29 (v2.6.0 [changelog](https://fluxcd.io/blog/2025/05/flux-v2.6.0/))

The primary goal of this milestone is to make a generally available release for the Flux OCI Artifacts APIs
and add support for object-level workload identity authentication for container registries.

- **OCI artifacts integrations**
  - [x] Promote the `OCIRepository` API to `v1`
  - [x] Promote to stable the Flux CLI commands:
    - `flux build artifact`
    - `flux push artifact`
    - `flux pull artifact`
    - `flux tag artifact`
    - `flux diff artifact`
    - `flux list artifacts`
  - [x] [Cache registry credentials for cloud providers](https://github.com/fluxcd/pkg/issues/642)
  - [x] [Introduce object-level workload identity for OCIRepository](https://github.com/fluxcd/source-controller/pull/1790)

- **Image automation**
  - [x] [Introduce object-level workload identity for ImageRepository](https://github.com/fluxcd/image-reflector-controller/pull/760)
  - [x] [Add support for updating OCI digests](https://github.com/fluxcd/flux2/issues/4245)

- **Git integrations**
  - [x] [Add support for sparse checkout in `GitRepository`](https://github.com/fluxcd/source-controller/pull/1774)
  - [x] [Add support for Git HTTP/S mutual TLS](https://github.com/fluxcd/source-controller/issues/1761#issuecomment-2796296665)
  - [x] [Implement caching for GitHub Application auth tokens](https://github.com/fluxcd/source-controller/pull/1745)

- **Kustomize integrations**
  - [x] [Introduce object-level workload identity for KMS decryption](https://github.com/fluxcd/kustomize-controller/pull/1412)
  - [x] [Implement `WaitForTermination` deletion policy](https://github.com/fluxcd/kustomize-controller/pull/1444)

- **Alerting integrations**
  - [x] [Add support for GitHub App auth to `Provider` API](https://github.com/fluxcd/notification-controller/issues/996)
  - [x] [Customise the ID of the Git commit status with CEL expressions](https://github.com/fluxcd/notification-controller/pull/1068)
  - [x] [Add support for workload identity auth for Azure Event Hub to `Provider` API](https://github.com/fluxcd/notification-controller/issues/1047)

- **Conformance testing**
  - [x] End-to-end testing for Kubernetes 1.33

- **EOL and Deprecations**
  - End support for Flux v2.3.x
  - End support for Kubernetes v1.30.x
  - Deprecate APIs in group `source.toolkit.fluxcd.io/v1beta2`

### v2.7 (Q3 2025)

**Status**: In Progress

The primary goal of this milestone is to make a generally available release for the Flux image automation APIs,
and make Flux server-side apply compatible with Kubernetes Vertical Pod Autoscaler (VPA).

- **Image automation**
  - [ ] Promote the `ImageUpdateAutomation` API to `v1`
  - [ ] Promote the `ImageRepository` API to `v1`
  - [ ] Promote the `ImagePolicy` API to `v1`
  - [x] [Add support for Git sparse checkout](https://github.com/fluxcd/image-automation-controller/pull/920)

- **Kustomize integrations**
  - [x] [Controller-level decryption for Age Keys](https://github.com/fluxcd/kustomize-controller/issues/1465)
  - [x] [Transactional apply for `ClusterRole` and `ClusterRoleBinding`](https://github.com/fluxcd/pkg/issues/956)
  - [x] [Add support for remote cluster authentication using Workload Identity](https://github.com/fluxcd/kustomize-controller/pull/1476)
  - [x] [Watch ConfigMaps and Secrets referenced in Kustomizations](https://github.com/fluxcd/flux2/issues/5446)
  - [x] [Extend the readiness evaluation of dependencies with CEL expressions](https://github.com/fluxcd/kustomize-controller/pull/1491)
  - [ ] [Extend `ssa.Apply` with field ignore rules](https://github.com/fluxcd/pkg/issues/696)

- **Helm integrations**
  - [x] [Extend HelmRelease post-renderer with CommonMetadata](https://github.com/fluxcd/helm-controller/pull/1223)
  - [x] [Add support for remote cluster authentication using Workload Identity](https://github.com/fluxcd/helm-controller/pull/1249)
  - [x] [Watch ConfigMaps and Secrets referenced in HelmReleases](https://github.com/fluxcd/helm-controller/pull/1258)
  - [x] [Extend the readiness evaluation of dependencies with CEL expressions](https://github.com/fluxcd/helm-controller/pull/1271)

- **Alerting integrations**
  - [x] [Add mTLS support to `Provider` API](https://github.com/fluxcd/notification-controller/pull/1137)
  - [x] [Extend `Provider` API with `spec.proxySecretRef`](https://github.com/fluxcd/notification-controller/pull/1133)
  - [x] [Add proxy support to Telegram notifier](https://github.com/fluxcd/notification-controller/pull/1140)
  - [x] [Add support for workload identity auth for Azure Dev Ops commit status to `Provider` API](https://github.com/fluxcd/notification-controller/issues/1008)
  
- **Conformance testing**
  - [ ] End-to-end testing for Kubernetes 1.34

- **EOL and Deprecations**
  - End support for Flux v2.4.x
  - End support for Kubernetes v1.31.x
  - Deprecate APIs in group `image.toolkit.fluxcd.io/v1beta2`
  - Remove deprecated APIs in group `helm.toolkit.fluxcd.io/v2beta1`
  - Remove deprecated APIs in group `image.toolkit.fluxcd.io/v1beta1`
  - Remove deprecated APIs in group `source.toolkit.fluxcd.io/v1beta1`
  - Remove deprecated APIs in group `kustomize.toolkit.fluxcd.io/v1beta1`
  - Remove the `autologin` deprecated flags from `image-reflector-controller`

## Request for comments

The [RFC process](https://github.com/fluxcd/flux2/tree/main/rfcs)
provides a consistent and controlled path for substantial changes to enter Flux.

To keep track of the Flux project's current direction and future plans, please see the following RFCs:

- [x] [RFC-0001](https://github.com/fluxcd/flux2/tree/main/rfcs/0001-authorization) Memorandum on the authorization model
- [x] [RFC-0002](https://github.com/fluxcd/flux2/tree/main/rfcs/0002-helm-oci) Flux OCI support for Helm
- [x] [RFC-0003](https://github.com/fluxcd/flux2/tree/main/rfcs/0003-kubernetes-oci) Flux OCI support for Kubernetes manifests
- [x] [RFC-0004](https://github.com/fluxcd/flux2/tree/main/rfcs/0004-insecure-http) Block insecure HTTP connections across Flux
- [x] [RFC-0005](https://github.com/fluxcd/flux2/tree/main/rfcs/0005-artifact-revision-and-digest) Artifact `Revision` format and introduction of `Digest`
- [x] [RFC-0006](https://github.com/fluxcd/flux2/tree/main/rfcs/0006-cdevents) Flux CDEvents Receiver
- [x] [RFC-0007](https://github.com/fluxcd/flux2/tree/main/rfcs/0007-git-repo-passwordless-auth) Passwordless authentication for Git repositories
- [x] [RFC-0008](https://github.com/fluxcd/flux2/tree/main/rfcs/0008-custom-event-metadata-from-annotations) Custom Event Metadata from Annotations
- [x] [RFC-0009](https://github.com/fluxcd/flux2/tree/main/rfcs/0009-custom-health-checks) Custom Health Checks for Kustomization using Common Expression Language(CEL)
- [x] [RFC-0010](https://github.com/fluxcd/flux2/tree/main/rfcs/0010-multi-tenant-workload-identity) Multi-Tenant Workload Identity
- [ ] [RFC](https://github.com/fluxcd/flux2/pull/5321) OpenTelemetry Tracing
- [ ] [RFC](https://github.com/fluxcd/flux2/pull/5292) External Artifact API
