Skip to content
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

StatefulSet integration #3001

Merged
merged 7 commits into from
Oct 23, 2024

Conversation

vladikkuzn
Copy link
Contributor

@vladikkuzn vladikkuzn commented Sep 5, 2024

What type of PR is this?

/kind feature

What this PR does / why we need it:

Adds statefulset integration to job framework

Which issue(s) this PR fixes:

Fixes #2717

Special notes for your reviewer:

Needs: #3189

Does this PR introduce a user-facing change?

Add integration for StatefulSet where Pods are managed by the pod-group integration.

@k8s-ci-robot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@k8s-ci-robot k8s-ci-robot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Sep 5, 2024
@k8s-ci-robot k8s-ci-robot added the size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. label Sep 5, 2024
Copy link

netlify bot commented Sep 5, 2024

Deploy Preview for kubernetes-sigs-kueue canceled.

Name Link
🔨 Latest commit 5ba4e58
🔍 Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-kueue/deploys/6718ebb863efe6000814399a

@vladikkuzn vladikkuzn changed the title Stateful set integration StatefulSet integration Sep 5, 2024
@k8s-ci-robot k8s-ci-robot added release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. labels Sep 5, 2024
@vladikkuzn
Copy link
Contributor Author

/assign

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Sep 6, 2024
@vladikkuzn vladikkuzn force-pushed the statefulset-integration branch from 5fc94f9 to 4a4dece Compare September 6, 2024 03:40
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Sep 6, 2024
@vladikkuzn vladikkuzn marked this pull request as ready for review September 6, 2024 03:41
@k8s-ci-robot k8s-ci-robot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Sep 6, 2024
@vladikkuzn
Copy link
Contributor Author

/ok-to-test

@k8s-ci-robot k8s-ci-robot added the ok-to-test Indicates a non-member PR verified by an org member that is safe to test. label Sep 6, 2024
@vladikkuzn
Copy link
Contributor Author

/cc @trasc

@k8s-ci-robot k8s-ci-robot requested a review from trasc September 6, 2024 11:03
@mimowo
Copy link
Contributor

mimowo commented Sep 6, 2024

@vladikkuzn can you test the integration works e2e?

When I was doing manual testing initially I hit a problem that the PodGroup integration waits until all pods are created, but StatefulSet creates second pod only after all previous pods are running, so there was a deadlock. If you confirm this is an issue I would recommend:

  • introduce the kueue.x-k8s.io/fast-pod-group-admission annotation, when true, then the Pod group does not need to wait for all pods with ungating
  • add an e2e test to confirm the integration works e2e

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Sep 26, 2024
@vladikkuzn vladikkuzn force-pushed the statefulset-integration branch 2 times, most recently from f5601e3 to c5d077d Compare September 26, 2024 11:06
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Sep 26, 2024
@vladikkuzn
Copy link
Contributor Author

Please summarize the current state in the issue

Do you mean in existing issue or in separate one?

@mimowo
Copy link
Contributor

mimowo commented Oct 21, 2024

I meant the same issue for now, but feel free to create a new one as well.

@k8s-ci-robot k8s-ci-robot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels Oct 22, 2024
@vladikkuzn vladikkuzn force-pushed the statefulset-integration branch from 0333757 to a475247 Compare October 22, 2024 12:05
@vladikkuzn
Copy link
Contributor Author

/retest

@vladikkuzn vladikkuzn force-pushed the statefulset-integration branch from a475247 to 2945e6c Compare October 23, 2024 09:19
* Unit tests for webhook update
@vladikkuzn vladikkuzn force-pushed the statefulset-integration branch from 2945e6c to a79aacb Compare October 23, 2024 09:19
@vladikkuzn vladikkuzn requested a review from trasc October 23, 2024 09:39
* Remove comment
* Use ptr.deref
* Optimize Webhook Default
@vladikkuzn vladikkuzn force-pushed the statefulset-integration branch from 00b07e2 to 5ba4e58 Compare October 23, 2024 12:27
@mbobrovskyi
Copy link
Contributor

/lgtm

Thanks!

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 23, 2024
@k8s-ci-robot
Copy link
Contributor

LGTM label has been added.

Git tree hash: b4474b21cd5e6cf7ce68f77976fcd081ac16e1a3

Copy link
Contributor

@mimowo mimowo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great!
/approve
@vladikkuzn please follow up with documentation update analogous as we have for Deployment

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mimowo, vladikkuzn

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 /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 23, 2024
@k8s-ci-robot k8s-ci-robot merged commit e8df54d into kubernetes-sigs:main Oct 23, 2024
16 checks passed
@k8s-ci-robot k8s-ci-robot added this to the v0.9 milestone Oct 23, 2024
@mbobrovskyi mbobrovskyi deleted the statefulset-integration branch October 23, 2024 15:13
@mimowo
Copy link
Contributor

mimowo commented Oct 24, 2024

/kind feature

@k8s-ci-robot k8s-ci-robot added the kind/feature Categorizes issue or PR as related to a new feature. label Oct 24, 2024
PBundyra pushed a commit to PBundyra/kueue that referenced this pull request Nov 5, 2024
* Stateful set integration

* Stateful set integration

* kueue.x-k8s.io/pod-group-fast-admission annotation

* Stateful set integration

* Move integration test

* Stateful set integration

* Update e2e test
* Add comment about dependent integrations to Integrations

* Stateful set integration

* Restrict to update replicas

* Stateful set integration

* Unit tests for webhook update

* Stateful set integration

* Remove comment
* Use ptr.deref
* Optimize Webhook Default
kannon92 pushed a commit to openshift-kannon92/kubernetes-sigs-kueue that referenced this pull request Nov 19, 2024
* Stateful set integration

* Stateful set integration

* kueue.x-k8s.io/pod-group-fast-admission annotation

* Stateful set integration

* Move integration test

* Stateful set integration

* Update e2e test
* Add comment about dependent integrations to Integrations

* Stateful set integration

* Restrict to update replicas

* Stateful set integration

* Unit tests for webhook update

* Stateful set integration

* Remove comment
* Use ptr.deref
* Optimize Webhook Default
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/feature Categorizes issue or PR as related to a new feature. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

MVP support / extension of support for serving workloads
6 participants