-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
feat(sdk+api) Implement Semaphores and Mutexes Pipeline Configuration #11340
base: master
Are you sure you want to change the base?
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: 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 |
ae9192a
to
65dd821
Compare
couple nitpicks but overall lgtm. I don't want to merge it until the backend PR is posted and close to shipping. |
c3178ce
to
15b89b0
Compare
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.
/hold
lgtm but let's wait until the backend PR is ready to go too
edit: need to use the right protoc version when generating the pipeline_spec files
39665e1
to
8ef1f2d
Compare
can we add a test where we verify the semaphore setting compiles to the expected IR? |
8ef1f2d
to
8a7b0e5
Compare
Edit: Updated to have the DSL generated |
still need to do this. Here's an example: |
8a7b0e5
to
8db319b
Compare
Yes I'm working on this ATM. I'm adding a unit test to the
Have a draft ready, testing locally and pushing it in a bit. |
3794a47
to
c4b0c43
Compare
Signed-off-by: ddalvi <[email protected]>
…P DSL Signed-off-by: ddalvi <[email protected]>
c4b0c43
to
78adc95
Compare
Added a unit test to verify semaphore and mutex setting, the test works as expected and passes on my local venv, but fails in this PR's CI. Wondering if it's because the .proto changes haven't been merged into the code base yet. @gregsheremeta could you take a look and confirm? |
So yes. The test can stay here. Tests just won't pass until the proto is merged and this is rebased. It's the normal/usual/expected flow. |
Description of your changes:
This PR introduces
semaphoreKey
andmutexName
fields inPipelineConfig
to support pipeline-level concurrency controls in KFP SDK.Testing instructions
Create a Python virtualenv and install the SDK and IR YAML API packages locally:
Use the example code to compile
You should be able to compile and find the following snippet in the main.yaml file:
Checklist: