Skip to content

Commit

Permalink
Merge pull request #64 from fluxcd/docs-roadmap
Browse files Browse the repository at this point in the history
Add roadmap draft to docs
  • Loading branch information
stefanprodan authored Jun 24, 2020
2 parents 43b00c5 + fd7ab0a commit 4b18f56
Show file tree
Hide file tree
Showing 2 changed files with 82 additions and 0 deletions.
81 changes: 81 additions & 0 deletions docs/roadmap/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# Roadmap

!!! hint "Work in Progress"
We will be building the roadmap together with the Flux community,
our end-users and everyone who is interested in integrating with us.
So a lot of this is still TBD - read this as our shopping list of
ideas after some brainstorming as Flux maintainers.

## The road to Flux v2

### Flux read-only feature parity

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 an in-place migration tool 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
- Offer a dedicated component for forwarding events to external messaging platforms

Non-Goals

- Migrate users that are using Flux to run custom scripts with `flux.yaml`
- Automate the migration of `flux.yaml` kustomize users

Tasks

- Review the git source and kustomize APIs
- Design the events API
- Implement events in source and kustomize controllers
- Implement Prometheus metrics 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 the migration command in tk
- Create a migration guide for `flux.yaml` kustomize users

### Flux image update feature parity

Goals

- Offer a dedicated component that can replace Flux v1 image update feature

Non-Goals

- Maintain backwards compatibility with Flux v1 annotations

Tasks

- Design the Git push API
- Implement Git push in source controller
- Design the image scanning API
- Implement an image scanning controller
- Design the manifests patching 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

Goals

- Offer a migration guide for those that are using Helm Operator with Helm v3 and Helm repositories

Non-Goals

- Migrate users that are using Helm v2
- Migrate users that are using Helm charts from Git

Tasks

- Review the Helm release, chart and repository APIs
- Design Helm releases based on source API
- Implement a Helm controller for Helm v3 covering all the current release options
- Implement events in Helm controller
- Implement Prometheus metrics in Helm controller
- Create a migration guide for Helm Operator users
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,3 +78,4 @@ nav:
- Sync source: cmd/tk_sync_source.md
- Sync source git: cmd/tk_sync_source_git.md
- Uninstall: cmd/tk_uninstall.md
- Roadmap: roadmap/index.md

0 comments on commit 4b18f56

Please sign in to comment.