Skip to content

K8s 1.37 client go / envtest updates - #5226

Open
marosset wants to merge 5 commits into
ray-project:masterfrom
marosset:k8s-1.37-client-go
Open

K8s 1.37 client go / envtest updates#5226
marosset wants to merge 5 commits into
ray-project:masterfrom
marosset:k8s-1.37-client-go

Conversation

@marosset

@marosset marosset commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Why are these changes needed?

K8s v1.37 is out and this is also a prereq for continues the WAS work to support K8s v1.37 scheduling APIS

This PR updates client-go and envtest targets to K8s v1.37 in all packages in the repo (including podpool and historyserver)

A few notes:

  • The v1alpha2 scheduling API was removed in K8s v1.37 and in order to maintain support for K8s v1.36 clusters this PR vendors local copies of the v1alpha2 scheduling API into the repo. There is a README.md in the PR with more details.
  • I fixed an issue with the historyserver makefile which was causing which was causing files to not get formatted so that changes are also included.

Related issue number

Labels

  • If this PR has user-facing changes that require documentation updates at release time, I have added the doc-updates-required label.
  • If this PR contains breaking changes, I have added the breaking-change label.

Checks

  • I've made sure the tests are passing.
  • Testing Strategy
    • Unit tests
    • Manual tests
    • This PR is not tested :(

Manual test instructions

@marosset marosset added 1.8.0 dependencies Pull requests that update a dependency file labels Sep 1, 2026
@marosset marosset added the go Pull requests that update Go code label Sep 1, 2026
1.37 client libraries.

This directory contains a frozen copy of the following files from
`k8s.io/api/scheduling/v1alpha2` at `v0.36.0`:

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Actually, I think we can move to scheduling.k8s.io/v1alpha3 directly. We can ask users to keep using the old kuberay if they require k8s.io/api/scheduling/v1alpha2.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Agree, we do not need to copy the whole type here

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I would need to update things like the kindconfig used in CI for the v1alpha2 e2e test job and things if we want to switch the current WAS plugin too (and maybe a few other things)

I think it might be cleaner to just keep the v1alpha2 files around for now.
If you all are really against this I can do testing for the v1alpha3 support and include that here.
Let me know!

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

+1 move to scheduling.k8s.io/v1alpha3

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Yes I think we can move to v1alpha3 in this PR, as v1alpha2 files will eventually be removed (either this or follow-up PR), we can just do that here

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

ok! let me work on that and i'll update this PR

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

I updated all the existing v1alpha2 references to v1alpha3 but DID NOT change any behaviors.

I have work done in another branch to implement support for new behaviors (specifically support mutable PodGroup minCount / enable WAS for autoscaling clusters and support for PodGroupPremptionPolicy)).
After this merges I'll rebase those changes on here and open up a new PR.

cc @rueian @machichima @win5923

Signed-off-by: Mark Rossetti <marosset@microsoft.com>
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.8.0 dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants