Roadmap
Production readiness
The Flux custom resource definitions which are atv1beta1 and v2beta1
and their controllers are considered stable and production ready.
Going forward, breaking changes to the beta CRDs will be accompanied by a conversion mechanism.
Please see the
Migration and Suport Timetable for our commitment to end users.
The following components (included by default in flux bootstrap) are considered production ready:
The following GitOps Toolkit APIs are considered production ready:
source.toolkit.fluxcd.io/v1beta1kustomize.toolkit.fluxcd.io/v1beta1notification.toolkit.fluxcd.io/v1beta1helm.toolkit.fluxcd.io/v2beta1
The road to Flux v2 GA
In our planning discussions we have identified these possible areas of work, this list is subject to change while we gather feedback:
-
Stabilize the image automation APIs
- Review the spec of
ImageRepository,ImagePolicyandImageUpdateAutomation - Promote the image automation APIs to
v1beta1 - Include the image automation controllers in the default components list
- Review the spec of
-
Improve the documentation
- Gather feedback on the migration guides and address more use-cases
- Incident management and troubleshooting guides
- Cloud specific guides (AWS, Azure, Google Cloud, more?)
- Consolidate the docs under fluxcd.io website
The road to Flux v1 feature parity
In our planning discussions we identified three areas of work:
- Feature parity with Flux v1 in read-only mode
- Feature parity with the image-update functionality in Flux v1
- Feature parity with Helm Operator v1
Flux read-only feature parity
Flux v2 read-only is ready to try. See the Getting Started how-to, and the Migration guide.
This would be the first stepping stone: we want Flux v2 to be on-par with today’s Flux in read-only mode and FluxCloud notifications.
Goals
Non-Goals
- Migrate users that are using Flux to run custom scripts with
flux.yaml - Automate the migration of
flux.yamlkustomize users
Tasks
- Design the events API
- Implement events in source and kustomize controllers
- Make the kustomize-controller apply/gc events on-par with Flux v1 apply events
- Design the notifications and events filtering API
- Implement a notification controller for Slack, MS Teams, Discord, Rocket
- Implement Prometheus metrics in source and kustomize controllers
- Review the git source and kustomize APIs
- Support
bash-style variable substitution as an alternative to
flux.yamlenvsubst/sed usage - Create a migration guide for
flux.yamlkustomize users - Include support for SOPS
Flux image update feature parity
Image automation is available as a prerelease. See this guide for how to install and use it.
Goals
- Offer components that can replace Flux v1 image update feature
Non-Goals
- Maintain backwards compatibility with Flux v1 annotations
- Order by timestamps found inside image layers
Tasks
- Design the image scanning and automation API
- Implement an image scanning controller
- Public image repo support
- Credentials from Secret fluxcd/image-reflector-controller#35
- Design the automation component
- Implement the image scan/patch/push workflow
- Integrate the new components in the Flux CLI fluxcd/flux2#538
- Write a guide for how to use image automation ( guide here)
- ACR/ECR/GCR integration ( guide here)
- Write a migration guide from Flux v1 annotations ( guide here)
Helm v3 feature parity
Helm support in Flux v2 is ready to try. See the Helm controller guide, and the Helm controller migration guide.
Goals
- Offer a migration guide for those that are using Helm Operator with Helm v3 and charts from Helm and Git repositories
Non-Goals
- Migrate users that are using Helm v2
Tasks
- Implement a Helm controller for Helm v3 covering all the current release options
- Discuss and design Helm releases based on source API:
- Providing values from sources
- Conditional remediation on failed Helm actions
- Support for Helm charts from Git
- Review the Helm release, chart and repository APIs
- Implement events in Helm controller
- Implement Prometheus metrics in Helm controller
- Implement support for values from
SecretandConfigMapresources - Implement conditional remediation on (failed) Helm actions
- Implement support for Helm charts from Git
- Implement support for referring to an alternative chart values file
- Stabilize API
- Create a migration guide for Helm Operator users