Closed steeling closed 6 months ago
@steeling Hi there. First of all, thank you for your attention. ❤️
For the basic GitOps process, we currently support the use of ArgoCD for KCL configuration repo management and automatic synchronization, See here. We have plans to support FluxCD, but it may be available between KCL v0.6.0 and v0.7.0 versions. It would be great if you could participate in the collaboration and contribution of the KCL FluxCD Source Controller.
In addition, with the automation capabilities of KCL, FluxCD can automatically listen to Image Registry and update the image configuration into KCL code, just like the kustomize set image
command does.
Some topics unrelated to this PR:
hi @Peefy, thanks for quick reply! The argo cd integration looks exactly like what we're looking for! Particularly with the recently accepted proposal for argo to pull from OCI registries + kpm.
Will spend some more time looking at this, but this looks promising :)
The initial implementation version is here: https://github.com/kcl-lang/flux-kcl-controller and I'll transfer this issue to the repo.
Enhancement
This is probably the wrong place for this, but I wanted to add a request for creating a flux controller. Flux currently supports helm (beta, with a lot of missing features in drift detection), and kustomize (but this can also just be native k8s yaml files).
A flux controller would allow us to create and manage our kcl manifests directly from our repo, without any additional tooling or pre-rendering.
This could be done be either creating a controller akin to the kustomize controller, or a new source controller. This source controller would be chained to another source controller, such that it: