Introduces new reconciler abstractions Workflow and Subscriber:
Workflow: runs an optional precondition reconciliation function, then dispatches the reconciliation event to a list of concurrent reconciliation tasks, and runs an optional postcondition reconciliation function.
Subscriber: calls the reconciler function of the first subscription that matches the event (resource, event type, object name)
Additionally:
controller topology simplified: no longer stored with the controller – since it's currently being rebuilt at every event (this can change in the future)
propagation of a new ResourceEvent struct through reconciliation calls: stores info about the API resource, event type (create/update/delete), old and new objects
kuadrant controller example updated to leverage the changes above:
Introduces new reconciler abstractions
Workflow
andSubscriber
:Workflow
: runs an optional precondition reconciliation function, then dispatches the reconciliation event to a list of concurrent reconciliation tasks, and runs an optional postcondition reconciliation function.Subscriber
: calls the reconciler function of the first subscription that matches the event (resource, event type, object name)Additionally:
examples/kuadrant/reconcilers
examples/kuadrant/docs