-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(sdk): Support per workflow TTL (ttl_seconds_after_finished) with new format of Argo workflow manifest #7141
fix(sdk): Support per workflow TTL (ttl_seconds_after_finished) with new format of Argo workflow manifest #7141
Conversation
… of Argo workflow manifest
Hi @SebBlin. Thanks for your PR. I'm waiting for a kubeflow member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
/ok-to-test
Hi @Arhell I'm a newbie and this is my first PR. Am I supposed to do something else to make this PR progress or is it fine for my ? Sorry for this question. |
@@ -832,8 +832,8 @@ def _create_pipeline_workflow(self, | |||
|
|||
# set ttl after workflow finishes | |||
if pipeline_conf.ttl_seconds_after_finished >= 0: | |||
workflow['spec'][ | |||
'ttlSecondsAfterFinished'] = pipeline_conf.ttl_seconds_after_finished |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems to be a breaking change, do we know from which Argo version was this change introduced? Consequently, which KFP version has that Argo upgrade? We'll need to document this change in the release note.
sdk/python/kfp/compiler/compiler.py
Outdated
@@ -832,8 +832,8 @@ def _create_pipeline_workflow(self, | |||
|
|||
# set ttl after workflow finishes | |||
if pipeline_conf.ttl_seconds_after_finished >= 0: | |||
workflow['spec'][ | |||
'ttlSecondsAfterFinished'] = pipeline_conf.ttl_seconds_after_finished | |||
workflow['spec']['ttlStrategy'] = {} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: the following line can be combined into this one as
workflow['spec']['ttlStrategy'] = {'secondsAfterCompletion' = pipeline_conf.ttl_seconds_after_finished}
Here are details about this breaking change:
I'm not sure where to put this in the release note; I would put it in "Current Version"/"Bug Fixes and Other Changes" as this is a fix that correct a breaking from Argo; it doesn't introduce a breaking change in KFP. |
Thanks for the info. On KFP side, upgrading Argo workflow from 2.x to 3.x was done by #5922, which in in KFP (backend) 1.7.0-alpha.1 release per the changelog. That means this SDK change would make the next KFP SDK work with KFP backend 1.7+, but incompatible with earlier version. In that sense, it's a breaking change for KFP pre-1.7 versions. Does that make sense? |
Add Braking change due to incompatibility with KFP pre 1.7 due to Argo 2.X
Indeed, you are completely right. I updated the changelog accordingly |
/lgtm Thanks! |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: chensun The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
…new format of Argo workflow manifest (kubeflow#7141) * Support per workflow TTL (ttl_seconds_after_finished) with new format of Argo workflow manifest * Update test for TTL * Declare fix in release note of SDK * update syntaxe * Update RELEASE.md Add Braking change due to incompatibility with KFP pre 1.7 due to Argo 2.X
…7182 into sdk/release-1.8 branch. (#7200) * test: fix tfx presubmit test. (#7143) * fix(sdk): Respect namespace if set on client (#7056) * respect namespace if set on client * make sure is_multi_user * overwrite directly context_setting * revert non-related changes * revert overwrite_namespace * expand text * add release notes * add PR link * fix(sdk): Support per workflow TTL (ttl_seconds_after_finished) with new format of Argo workflow manifest (#7141) * Support per workflow TTL (ttl_seconds_after_finished) with new format of Argo workflow manifest * Update test for TTL * Declare fix in release note of SDK * update syntaxe * Update RELEASE.md Add Braking change due to incompatibility with KFP pre 1.7 due to Argo 2.X * chore(sdk): Remove redundant check in set_gpu_limit (#6866) * remove redundant check in set_gpu_limit * release note * fix(sdk): Fix create_runtime_artifact not covering all types. (#7168) * Fix create_runtime_artifact not covering all types. * release note * fix(sdk): bumps up absl version to 1.x for compatibility with TF 2.8+. Fixes #7171 (#7172) * Bumps up absl version to 1.x for compatibility with TF 2.8+. * Adds a release note for absl version. * chore(sdk): Update SDK release note for the upcoming 1.8.11 release (#7182) Co-authored-by: Gerard Casas Saez <[email protected]> Co-authored-by: Seb <[email protected]> Co-authored-by: Jiyong Jung <[email protected]>
…new format of Argo workflow manifest (kubeflow#7141) * Support per workflow TTL (ttl_seconds_after_finished) with new format of Argo workflow manifest * Update test for TTL * Declare fix in release note of SDK * update syntaxe * Update RELEASE.md Add Braking change due to incompatibility with KFP pre 1.7 due to Argo 2.X
No description provided.