Correctly support scheduling and syncing a resource to several SyncTargets, and coordinating the syncing flow between the syncers of those SyncTargets.
EPIC detailed issues and overall progress can be tracked with the following project view
Detailed description
This involves:
Storing and maintaining SyncTarget-specific values of some resource fields like status
Allowing SyncTarget-specific transformations to applied to the resource when syncing down the resource to downstream
Coordination controllers having a way to access the Synctarget-specific views of the resources, as well as some syncing-driving resource annotations or labels.
Demo Objective
[x] Always consistently maintain syncer-specific views of KCP synced resources, when a resource is synced to several SyncTargets (either inside a location in specific cases, such a move of specific resources, or through several placement to several locations)
[x] Provide a way for coordination controllers to get the syncer-specific views of KCP syncer resources, especially status reported by the Syncer.
[x] Provide a way for coordination controllers to instruct transformations that should be applied by the syncer when syncing an resource downstream (at first through JsonPatch annotations, later on through more advanced transformation engines such as CEL definitions, driven by dedicated APIs).
[ ] Provide a way for coordination controllers to instruct summarizing rules that should be applied by the syncer when syncing back a downstream resource downstream (at first just a Json annotation indicating if the syncer-specific status should be promoted to the main resource status. Later on more complete rules could be defined by dedicated APIs)
[ ] Ensure the exclusiveness of coordination controllers on resources. only one coordination controller should be allowed to access a given coordinated resource in a workspace.
Demo Steps (TBD)
No response
Action Items
[X] Scope of the current demo is necessary to fit in the prototype boundaries
[ ] Contribute to the final demo script and recording
TL;DR
Correctly support scheduling and syncing a resource to several
SyncTarget
s, and coordinating the syncing flow between the syncers of those SyncTargets.Progress tracking #
EPIC detailed issues and overall progress can be tracked with the following project view
Detailed description
This involves:
status
Demo Objective
Demo Steps (TBD)
No response
Action Items
Stories (to be completed)