# Roadmap In our planning discussions for the GitOps Toolkit we identified largely 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 All of the above will constitute "Flux v2". ## The road to Flux v2 ### Flux read-only feature parity [= 90% "90%"] This would be the first stepping stone: we want the GitOps Toolkit to be on-par with today's Flux in [read-only mode](https://github.com/fluxcd/flux/blob/master/docs/faq.md#can-i-run-flux-with-readonly-git-access) and [FluxCloud](https://github.com/justinbarrick/fluxcloud) notifications. Goals - Offer a migration guide for those that are using Flux in read-only mode to synchronize plain manifests - Offer a migration guide for those that are using Flux in read-only mode to synchronize Kustomize overlays - :material-check-bold: [Offer a dedicated component for forwarding events to external messaging platforms](https://toolkit.fluxcd.io/guides/notifications/) Non-Goals - Migrate users that are using Flux to run custom scripts with `flux.yaml` - Automate the migration of `flux.yaml` kustomize users Tasks - [x] Design the events API - [x] Implement events in source and kustomize controllers - [x] Make the kustomize-controller apply/gc events on-par with Flux v1 apply events - [x] Design the notifications and events filtering API - [x] Implement a notification controller for Slack, MS Teams, Discord, Rocket - [x] Implement Prometheus metrics in source and kustomize controllers - [x] Review the git source and kustomize APIs - [ ] Create a migration guide for `flux.yaml` kustomize users - [x] Include support for SOPS ### Flux image update feature parity [= 30% "30%"] Goals - Offer components that can replace Flux v1 image update feature Non-Goals - Maintain backwards compatibility with Flux v1 annotations Tasks - [x] [Design the image scanning and automation API](https://github.com/fluxcd/toolkit/discussions/107) - [ ] Implement an image scanning controller - [x] Design the automation component - [ ] Implement the image scan/patch/push workflow - [ ] Integrate the new components in the toolkit assembler - [ ] Create a migration guide from Flux annotations ## The road to Helm Operator v2 ### Helm v3 feature parity [= 100% "100%"] 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 - [x] Implement a Helm controller for Helm v3 covering all the current release options - [x] Discuss and design Helm releases based on source API: * [x] Providing values from sources * [x] Conditional remediation on failed Helm actions * [x] Support for Helm charts from Git - [x] Review the Helm release, chart and repository APIs - [x] Implement events in Helm controller - [x] Implement Prometheus metrics in Helm controller - [x] Implement support for values from `Secret` and `ConfigMap` resources - [x] Implement conditional remediation on (failed) Helm actions - [x] Implement support for Helm charts from Git - [x] Implement support for referring to an alternative chart values file - [ ] Stabilize API - [ ] Create a migration guide for Helm Operator users