-
Notifications
You must be signed in to change notification settings - Fork 59
Move workflowstore logic to correct abstraction #496
Move workflowstore logic to correct abstraction #496
Conversation
@daniel-shuy thanks so much for your patience on this. I think moving the managed fields clearing to the passthrough and creating a new "tracking terminated" is the correct approach. Thanks for the initiative! Two things to get this merged: |
@hamersaw Thanks for confirming! Any comment on the proposal to improve the workflowstore configuration structure? |
Its annoying that the lint is failing even for an existing test ( |
I agree that this idea of chaining policies would make this solution a little cleaner. My only concern is the backwards comparability of this solution. Currently everybody should be running the "ResourceVersionCaching" workflow store - it's the default and is really the only one that makes sense. Creating a new "TrackingTerminated" from a code standpoint is the correct abstraction. However, there really is no reason to only have the "TrackingTerminated" policy without the "ResrouceVersionCaching". And we want as many people as possible to benefit from these changes without having to update their existing configuration. In a perfect world, we would: This is a bit of work and we would have to do a bit of testing to 100% be sure that the tracking terminated is available, because we can not have a regression here. I'll leave it up to you if you want to scope this work to cover this! |
a LOT of times it frustrates me that Golang doesn't use file level scopes! |
0490a53
to
5a49ac2
Compare
@hamersaw I see,thanks for the explanation. So this abstraction is only meant for code maintainability, not configurability. In that case I guess there's no need to change it. |
5a49ac2
to
1adaefe
Compare
@daniel-shuy looks like the DCO is giving a bit of trouble - this may help. You can rebase with signoff with |
@hamersaw oops I forgot I had 2 commits and only rebased the last |
…owstore Signed-off-by: Daniel Shuy <daniel_shuy@hotmail.com>
…re workflowstore Signed-off-by: Daniel Shuy <daniel_shuy@hotmail.com>
1adaefe
to
41e312b
Compare
* Move logic to clear workflow CRD managed fields to passthrough workflowstore Signed-off-by: Daniel Shuy <daniel_shuy@hotmail.com> * Move logic to track terminated workflows to new TerminatedTrackingStore workflowstore Signed-off-by: Daniel Shuy <daniel_shuy@hotmail.com> Signed-off-by: Daniel Shuy <daniel_shuy@hotmail.com> Co-authored-by: Dan Rammer <daniel@union.ai>
TL;DR
Type
Are all requirements met?
Complete description
I wonder if the workflowstore API structure could be improved. At the moment it is impossible to enable the resource version caching without also enabling the terminated tracking. Maybe the configuration can be changed to take in a list of policies, and the workflowstores would chain one another, e.g.
Tracking Issue
fixes flyteorg/flyte#2857
Follow-up issue
NA