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

Migrate RuntimeClass from a CRD to an internal API #74433

Merged
merged 4 commits into from Mar 8, 2019

Conversation

@tallclair
Copy link
Member

tallclair commented Feb 22, 2019

What type of PR is this?
/kind feature

What this PR does / why we need it:

Migrate the RuntimeClass API to a built-in Kubernetes API (from a CRD). For background, see this SIG-Architecture thread: https://groups.google.com/d/topic/kubernetes-sig-architecture/RycGP4LvQZk/discussion

Which issue(s) this PR fixes:
For kubernetes/enhancements#585

Special notes for your reviewer:

Only new non-boilerplate code is the validation (and associated test)

Does this PR introduce a user-facing change?:

ACTION REQUIRED: The node.k8s.io API group and runtimeclasses.node.k8s.io resource have been migrated to a built-in API. If you were using RuntimeClasses (an default-disabled alpha feature, as of Kubernetes v1.12), then you must recreate all RuntimeClasses after upgrading, and the runtimeclasses.node.k8s.io CRD should be manually deleted. RuntimeClasses can no longer be created without a defined handler.

Introduce a RuntimeClass v1beta1 API. This new beta API renames `runtimeHandler` to `handler`, makes it a required field, and cuts out the spec (handler is a top-level field).

/milestone v1.14
/priority important-soon
/sig architecture node

/assign @thockin @vishh
/cc @dchen1107 @derekwaynecarr

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Feb 22, 2019

Fix registration.

@fejta-bot

This comment has been minimized.

Copy link

fejta-bot commented Feb 22, 2019

This PR may require API review.

If so, when the changes are ready, complete the pre-review checklist and request an API review.

Status of requested reviews is tracked in the API Review project.

@tallclair tallclair referenced this pull request Feb 25, 2019

Open

RuntimeClass #585

@tallclair tallclair changed the title Migrate RuntimeClass from a CRD to an internal API [WIP] Migrate RuntimeClass from a CRD to an internal API Feb 25, 2019

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Feb 25, 2019

I just realized this is missing all the REST handlers. Will update when this is ready for review.

@roycaihw

This comment has been minimized.

Copy link
Member

roycaihw commented Feb 25, 2019

/cc @mbohlool

@k8s-ci-robot k8s-ci-robot requested a review from mbohlool Feb 25, 2019

@tallclair tallclair force-pushed the tallclair:runtimeclass-internal branch from a104198 to 19da040 Feb 26, 2019

@tallclair tallclair changed the title [WIP] Migrate RuntimeClass from a CRD to an internal API Migrate RuntimeClass from a CRD to an internal API Feb 26, 2019

@tallclair tallclair force-pushed the tallclair:runtimeclass-internal branch from 0410e07 to 47c5e1e Mar 6, 2019

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Mar 6, 2019

Squashed, rebased, and ready to go!

@vishh

vishh approved these changes Mar 6, 2019

Copy link
Member

vishh left a comment

/lgtm
/approve

@k8s-ci-robot k8s-ci-robot added the lgtm label Mar 6, 2019

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Mar 7, 2019

New changes are detected. LGTM label has been removed.

@k8s-ci-robot k8s-ci-robot removed the lgtm label Mar 7, 2019

@tallclair tallclair force-pushed the tallclair:runtimeclass-internal branch 2 times, most recently from 2af5f93 to e8071fb Mar 7, 2019

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Mar 7, 2019

/test pull-kubernetes-integration

@tallclair tallclair force-pushed the tallclair:runtimeclass-internal branch from e8071fb to 2a5846a Mar 7, 2019

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Mar 7, 2019

/test pull-kubernetes-integration

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Mar 7, 2019

rebased

@tallclair tallclair force-pushed the tallclair:runtimeclass-internal branch from 2a5846a to d45a886 Mar 7, 2019

tallclair added some commits Feb 22, 2019

@tallclair tallclair force-pushed the tallclair:runtimeclass-internal branch from d45a886 to 428e9fa Mar 7, 2019

@vishh

This comment has been minimized.

Copy link
Member

vishh commented Mar 7, 2019

/lgtm (again)

@tallclair tallclair added the lgtm label Mar 7, 2019

@spiffxp

This comment has been minimized.

Copy link
Member

spiffxp commented Mar 7, 2019

v1.14 release lead here, this is a size/XXL PR that is attempting to land right before Code Freeze... are you really sure this is a good idea?

(I'm crossing my fingers and hoping the answer is yes, given the recent sustained effort and reviews, and the fact that this ties back to an enhancement slated for this release)

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Mar 7, 2019

Functionally, this PR is relatively small. The size comes from all the generated files & boilerplate. I'd really like this to land for v1.14, to unblock RuntimeClass usage.

@tallclair

This comment has been minimized.

Copy link
Member Author

tallclair commented Mar 7, 2019

/retest

@dchen1107

This comment has been minimized.

Copy link
Member

dchen1107 commented Mar 8, 2019

/lgtm
/approve

@k8s-ci-robot

This comment has been minimized.

Copy link
Contributor

k8s-ci-robot commented Mar 8, 2019

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: dchen1107, tallclair, thockin, vishh

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 merged commit 183e6cc into kubernetes:master Mar 8, 2019

17 checks passed

cla/linuxfoundation tallclair authorized
Details
pull-kubernetes-bazel-build Job succeeded.
Details
pull-kubernetes-bazel-test Job succeeded.
Details
pull-kubernetes-conformance-image-test Skipped.
pull-kubernetes-cross Job succeeded.
Details
pull-kubernetes-e2e-gce Job succeeded.
Details
pull-kubernetes-e2e-gce-100-performance Job succeeded.
Details
pull-kubernetes-e2e-gce-device-plugin-gpu Job succeeded.
Details
pull-kubernetes-godeps Job succeeded.
Details
pull-kubernetes-integration Job succeeded.
Details
pull-kubernetes-kubemark-e2e-gce-big Job succeeded.
Details
pull-kubernetes-local-e2e Skipped.
pull-kubernetes-node-e2e Job succeeded.
Details
pull-kubernetes-typecheck Job succeeded.
Details
pull-kubernetes-verify Job succeeded.
Details
pull-publishing-bot-validate Skipped.
tide In merge pool.
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.