pipelines icon indicating copy to clipboard operation
pipelines copied to clipboard

feat(Backend + SDK): Update kfp backend and kubernetes sdk to support node affinity

Open cjidboon94 opened this issue 2 years ago • 12 comments

Description of your changes: This PR adds support for node affinity to the driver and kubernetes_platform SDK.

It is a follow up to #10671 and #10583, which updated the protobuf and Golang stub.

It follows the excellent example set by https://github.com/kubeflow/pipelines/pull/10427.

Huge thanks to @Tomcli for paving the way and sharing how to validate things end to end. Part of https://github.com/kubeflow/pipelines/issues/9768 and https://github.com/kubeflow/pipelines/issues/9682

Pod (Anti)Affinity will be added in a separate PR

Checklist:

cjidboon94 avatar Apr 05 '24 14:04 cjidboon94

Hi @cjidboon94. 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 /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

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.

google-oss-prow[bot] avatar Apr 05 '24 14:04 google-oss-prow[bot]

Hi @cjidboon94! With #10671 already merged, do you think we can unhold this PR?

rimolive avatar Apr 21 '24 10:04 rimolive

Hi @cjidboon94! With #10671 already merged, do you think we can unhold this PR?

@rimolive For sure!

cjidboon94 avatar May 24 '24 07:05 cjidboon94

/unhold

rimolive avatar May 25 '24 14:05 rimolive

cc @chensun

As the PR author said it's ready to review, can you remove the WIP tag?

rimolive avatar May 25 '24 14:05 rimolive

@rimolive Oh, it's not ready yet for review. Sorry, misunderstood what you meant by unhold. What I meant was that I'm going to finish this PR and then will switch it to "Ready for review"

cjidboon94 avatar May 25 '24 15:05 cjidboon94

Hi @cjidboon94, do you have an ETA when you plan to finish the PR? Just to say that @droctothorpe is willing to help.

rimolive avatar Jun 04 '24 11:06 rimolive

Happy to help. This PR may be a helpful reference.

droctothorpe avatar Jun 05 '24 02:06 droctothorpe

@droctothorpe Thanks for making some time! Maybe you can get ahead on the podAffinity and podAntiAffinity as this PR will only focus on nodeAffinity. While pod(anti)Affinity does fall under Affinity, I think they're separate enough that you could already work on it. I expect that we might need to merge some things or have a plan on which PR to merge first.

@rimolive I believe what's left is:

  • [x] backend tests
  • [ ] python sdk implementation
  • [ ] python sdk tests

I hope to finish up this week, had some life things going on that kept me off track but those are resolved now.

cjidboon94 avatar Jun 05 '24 07:06 cjidboon94

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: Once this PR has been reviewed and has the lgtm label, please assign ironpan for approval. For more information see the Kubernetes Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

google-oss-prow[bot] avatar Jun 07 '24 18:06 google-oss-prow[bot]

Still requires some work, I think (several more python tests to show different cases), but open to feedback/reviews

cjidboon94 avatar Jun 10 '24 18:06 cjidboon94

Any way we can help with this (and pod affinity)? The changes look OK from here.

therc avatar Aug 14 '24 20:08 therc