Open AndersBennedsgaard opened 5 months ago
If we want to allow for backwards compatibility, we could expose the decorator-controller webhook URL under a new path such as /decorator-sync
. This would allow users to choose whether to use a CompositeController or DecoratorController until the former is fully removed.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Still relevant
/lifecycle frozen
Feature Area
/area backend
What feature would you like to see?
At the moment, the KFP profile controller is implemented as a metacontroller CompositeController. This allows for the management of child resources based on a parent that is being watched, which is Namespaces for this component. However, according to the CompositeController documentation, the Metacontroller expects to have full control of the parent resource:
This is obviously not the case here, since the Namespace should be owned by the Kubeflow profile controller
Instead, converting the controller into a DecoratorController, which has a slightly different API, would be more appropriate.
Converting the existing CompositeController resource to a DecoratorController would look like this:
The current
sync.py
has to be changed to expect a request body that includescontroller
,object
,attachments
,related
, andfinalizing
, withobject
being the parent Namespace andattachments
being the attachments we subscribe to in the DecoratorController.What is the use case or pain point?
I have not been able to find any writing about the consequences of using a CompositeController for resources that aren't owned by the controller, so we can just say that unexpected errors can occur by using it like we do.
Is there a workaround currently?
Continue as usual.
Love this idea? Give it a 👍.