Replies: 5 comments 2 replies
-
2024.11.06 Flux Community Meeting NotesClarifications:
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
...
sourceRef:
kind: Http
name: http-podinfo-kustomize
apiVersion: openfluxcd.openfluxcd/v1alpha1
... ... because it improves, or rather, preserves user interaction of the system where
Requested Amendments:
Concerns:
|
Beta Was this translation helpful? Give feedback.
-
From my quick review I get the feeling this is similar to the already existing I love the idea of making it possible for new sources and/or deployers to be added without requiring explicit support from the other side. |
Beta Was this translation helpful? Give feedback.
-
Please note that I'll be at KubeCon next week so I won't have time to update everything here. ( I'll try my best to add some more details and explanation to the RFC ). This discussion will be continued on the Flux Meeting at 20th of November. Thank you for your patience. |
Beta Was this translation helpful? Give feedback.
-
Back from KubeCon. I will prepare for the meeting on the 20th! |
Beta Was this translation helpful? Give feedback.
-
Meeting Minutes from the discussion on the 20th of NovemberDesign decision changesRight now, the design dictates that any kind of source could become a source in the sourceRef. These changes would have some concerns listed below in the security section. The design though would be significantly easier to do if it would introduce the This also would be simpler to implement. Security ( or the appearance of it ) ConcernsThe concerns are that opening the restriction that now is an enum for sourceRef to be of kind ANY would be a significant move even though underneath we would still only watch Artifact. This wouldn't be reflected in the API however because it would no longer be an enum but an open ended value. This would trigger people ordering new security audits which are costly to understand what is being done to flux. Everything in the background is invisible to the user, so they wouldn't know what happens in the background and neither should they care. This isn't a problem, however, would significantly increase adoption and implementation time. This feature should be behind a feature flag and once it is implemented it should be an opt-in feature so security administrators could disabling dealing with third party objects and outside source providers. Update implementationThe update should include extraction of artifact generation in the source controller. Further, an update to the Flux CLI including all operations that it does right now regarding debugging. It would further include code that could be used by third party controller to create and correct Artifacts such that flux would accept them. This includes hashing, taring and packaging, folder creation, and updating the Artifact status. The third party would be responsible for validation and signing any artifacts and objects it generates. Maintainability concernsThe maintainability concern is still the same. Flux maintainers will need to be able to redirect concerns that use |
Beta Was this translation helpful? Give feedback.
-
Hello dear flux community.
We at OpenFlux would like to share a proposal/RFC with you and would like to officially start the RFC process.
I would like to keep the description of this discussion to a minimum so I'm sharing the draft RFC in a hackmd doc here:
https://hackmd.io/@skarlso/BkOvxwAeye
TL;DR we are suggesting to have a common Artifact custom resource type that any object could produce to be considered as a source object for flux to pick up. This would allow for community contributed source types.
We have a POC for such a community contributed source type, a http source with a corresponding controller, that showcases the modifications here: https-source-controller. This source controller is not a reimplementation of Flux source-controller, it is just a source type (like gitrepository or ocirepository).
Our modifications for this RFC are limited to kustomize and helm controller. There is no need to change any APIs and no need to change source-controller itself.
There is no need for dynamic watches, we provide that functionality through owner references and the contract for flux is kept with a Artifact in the status for an object. All objects need to implement the
Source
interface anyways.Please have a read, and let's discuss. We'll take part in the coming Flux meetings on 6th of November 13:00 CET.
Beta Was this translation helpful? Give feedback.
All reactions