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

RuntimeClass #585

Closed
tallclair opened this issue Jul 10, 2018 · 89 comments
Closed

RuntimeClass #585

tallclair opened this issue Jul 10, 2018 · 89 comments
Assignees
Labels
kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/node Categorizes an issue or PR as relevant to SIG Node. stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status
Milestone

Comments

@tallclair
Copy link
Member

tallclair commented Jul 10, 2018

Enhancement Description

  • One-line feature description (can be used as a release note): RuntimeClass is a new cluster-scoped resource that surfaces container runtime properties to the control plane.
  • Kubernetes Enhancement Proposal: https://github.com/kubernetes/enhancements/tree/master/keps/sig-node/585-runtime-class
  • Primary contact (assignee): @tallclair
  • Responsible SIGs: sig-node
  • Feature target (which target equals to which milestone):
    • Alpha release target: 1.12
    • Beta release target: 1.14
    • Stable release target: x.y

EDIT(spiffxp): I edited this to match the current enhancement tracking issue template, the following entries or content are not part of the template

@tallclair
Copy link
Member Author

/sig node
/milestone v1.12

@k8s-ci-robot k8s-ci-robot added the sig/node Categorizes an issue or PR as relevant to SIG Node. label Jul 10, 2018
@tallclair tallclair added this to the v1.12 milestone Jul 10, 2018
@tallclair tallclair self-assigned this Jul 10, 2018
@justaugustus
Copy link
Member

@tallclair --

It looks like this feature is currently in the Kubernetes 1.12 Milestone.

If that is still accurate, please ensure that this issue is up-to-date with ALL of the following information:

  • One-line feature description (can be used as a release note):
  • Primary contact (assignee):
  • Responsible SIGs:
  • Design proposal link (community repo):
  • Link to e2e and/or unit tests:
  • Reviewer(s) - (for LGTM) recommend having 2+ reviewers (at least one from code-area OWNERS file) agreed to review. Reviewers from multiple companies preferred:
  • Approver (likely from SIG/area to which feature belongs):
  • Feature target (which target equals to which milestone):
    • Alpha release target (x.y)
    • Beta release target (x.y)
    • Stable release target (x.y)

Set the following:

  • Description
  • Assignee(s)
  • Labels:
    • stage/{alpha,beta,stable}
    • sig/*
    • kind/feature

Once this feature is appropriately updated, please explicitly ping @justaugustus, @kacole2, @robertsandoval, @rajendar38 to note that it is ready to be included in the Features Tracking Spreadsheet for Kubernetes 1.12.


Please note that the Features Freeze is July 31st, after which any incomplete Feature issues will require an Exception request to be accepted into the milestone.

In addition, please be aware of the following relevant deadlines:

  • Docs deadline (open placeholder PRs): 8/21
  • Test case freeze: 8/28

Please make sure all PRs for features have relevant release notes included as well.

Happy shipping!
/kind feature
/stage alpha

@k8s-ci-robot k8s-ci-robot added stage/alpha Denotes an issue tracking an enhancement targeted for Alpha status kind/feature Categorizes issue or PR as related to a new feature. labels Jul 18, 2018
@derekwaynecarr
Copy link
Member

LGTM

@justaugustus
Copy link
Member

Thanks for the update! This has been added to the 1.12 Tracking sheet.

@zparnold
Copy link
Member

Hey there! @tallclair I'm the wrangler for the Docs this release. Is there any chance I could have you open up a docs PR against the release-1.12 branch as a placeholder? That gives us more confidence in the feature shipping in this release and gives me something to work with when we start doing reviews/edits. Thanks! If this feature does not require docs, could you please update the features tracking spreadsheet to reflect it?

@tallclair
Copy link
Member Author

@zparnold what are the docs expectations for alpha features?

k8s-github-robot pushed a commit to kubernetes/kubernetes that referenced this issue Aug 22, 2018
Automatic merge from submit-queue (batch tested with PRs 67298, 67518, 67635, 67673). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add RuntimeHandler to the CRI RunPodSandboxRequest

**What this PR does / why we need it**:

Adds the CRI portion of the [RuntimeClass](https://github.com/kubernetes/community/blob/master/keps/sig-node/0014-runtime-class.md#runtime-handler) API.

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

**Special notes for your reviewer**:
The Kubernetes API is still blocked on a decision about alpha field usage, see [discussion on sig-architecture](https://groups.google.com/forum/#!topic/kubernetes-sig-architecture/y9FulL9Uq6A). I'd like to start with the CRI piece so we can unblock work on the CRI implementation side to have support ready when Kubernetes support is there.

**Release note**:
```release-note
[CRI] Adds a "runtime_handler" field to RunPodSandboxRequest, for selecting the runtime configuration to run the sandbox with (alpha feature).
```

/sig node
/milestone v1.12
/priority important-soon
/kind api-change
k8s-github-robot pushed a commit to kubernetes/kubernetes that referenced this issue Aug 23, 2018
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Runtimeclass podapi

Adds (but doesn't implement) the RuntimeClass Pod API proposed in https://github.com/kubernetes/community/blob/master/keps/sig-node/0014-runtime-class.md

Based on the result (lazy consensus) of the alpha fields discussion on sig-architecture: https://groups.google.com/forum/#!topic/kubernetes-sig-architecture/y9FulL9Uq6A

For kubernetes/enhancements#585

**Special notes for your reviewer**:

**Release note**:
```release-note
RuntimeClass is a new API resource for defining different classes of runtimes that may be used to run containers in the cluster. Pods can select a RunitmeClass to use via the RuntimeClassName field. This feature is in alpha, and the RuntimeClass feature gate must be enabled in order to use it.
```

/sig node
/kind api-change
/priority important-soon
/milestone v1.12
k8s-publishing-bot added a commit to kubernetes/api that referenced this issue Aug 24, 2018
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Runtimeclass podapi

Adds (but doesn't implement) the RuntimeClass Pod API proposed in https://github.com/kubernetes/community/blob/master/keps/sig-node/0014-runtime-class.md

Based on the result (lazy consensus) of the alpha fields discussion on sig-architecture: https://groups.google.com/forum/#!topic/kubernetes-sig-architecture/y9FulL9Uq6A

For kubernetes/enhancements#585

**Special notes for your reviewer**:

**Release note**:
```release-note
RuntimeClass is a new API resource for defining different classes of runtimes that may be used to run containers in the cluster. Pods can select a RunitmeClass to use via the RuntimeClassName field. This feature is in alpha, and the RuntimeClass feature gate must be enabled in order to use it.
```

/sig node
/kind api-change
/priority important-soon
/milestone v1.12

Kubernetes-commit: 40063e8810d61f4550cbdbfa33da90728c727679
@zparnold
Copy link
Member

Hey @tallclair I think in order to get usage out of the feature it's best to document it in the same way it would be a beta/GA feature. Then if people file issues against it we can improve the feature/docs. What do you think?

@tianshapjq
Copy link

Are there any docs on the available options about RuntimeClassName to be able to leverage this feature?

@tallclair
Copy link
Member Author

kubernetes/website#10102 will provide the documentation, but it's not written yet.

@tallclair
Copy link
Member Author

@hh
Copy link
Member

hh commented Nov 12, 2020

From #k8s-conformance slack conversation https://kubernetes.slack.com/archives/C78F00H99/p1605209694093700:

From what I recall, two weeks as a flakiness check was not based on data. I would be open to adjusting that if the data shows that tests with say 1 week or 10 days of clean runs are highly likely to have 2 weeks of clean runs. @johnbelamaric

i'm open to that too @smarterclayton

If we can get solid conformance tests on these endpoints this week, this should allow 7-10 days of non-flakey CI runs:

https://apisnoop.cncf.io/conformance-progress/endpoints/1.20.0?filter=promoted-without-tests

image

@jeremyrickard
Copy link
Contributor

@hh thank you for that additional context and input.

@SergeyKanzhelev could you please open a code freeze exception request for this (assuming you won't have a PR for this merged by code freeze today). Otherwise, I think we'll need to talk about reverting this for the 1.20 release, as it's lacking the conformance tests.

@SergeyKanzhelev
Copy link
Member

@SergeyKanzhelev could you please open a code freeze exception request for this (assuming you won't have a PR for this merged by code freeze today). Otherwise, I think we'll need to talk about reverting this for the 1.20 release, as it's lacking the conformance tests.

Can you please help me with this? Where I can read about exception process/form?

@jeremyrickard
Copy link
Contributor

@SergeyKanzhelev oh sorry! I thought I had linked it above! 😞

You can find the process documented here.

In essence:

Enhancement Owners
To file for an exception, please fill out the questions below:

Enhancement name:
Enhancement status (alpha/beta/stable):
SIG:
k/enhancements repo issue #:
PR #’s:
Additional time needed (in days):
Reason this enhancement is critical for this milestone:
Risks from adding code late: (to k8s stability, testing, etc.)
Risks from cutting enhancement: (partial implementation, critical customer usecase, etc.)
Email them to:

Your SIG's mailing list
release-team@kubernetes.io
kubernetes-sig-release@googlegroups.com

We'll need to know how many days you'll need for the work to get the tests turned around.

Thanks so much!!

@SergeyKanzhelev
Copy link
Member

sure. Since tests freeze is 23rd - should I already file an exception? Or if PR will be merged tomorrow it will be fine?

(I know, this is not ideal and should have known about these tests before)

@kikisdeliveryservice
Copy link
Member

@SergeyKanzhelev

Code Freeze requires: "All enhancements going into the release must be code-complete, including tests"

So yes you will need to file an exception as this test is a requirement for your feature to be GA - as of now it is not complete. Please file an exception ASAP (Jeremy linked above).

@kikisdeliveryservice
Copy link
Member

Hi @SergeyKanzhelev

Code Freeze is now in effect. As discussed above, you will need to file an Exception.

Best,
Kirsten

@kikisdeliveryservice kikisdeliveryservice added tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team and removed tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team labels Nov 13, 2020
@kikisdeliveryservice kikisdeliveryservice removed this from the v1.20 milestone Nov 13, 2020
@kikisdeliveryservice
Copy link
Member

An exception was filed and granted:
https://groups.google.com/g/kubernetes-sig-release/c/0b5SQLz2tZg/m/6x26WRccAgAJ

/milestone v1.20

@k8s-ci-robot k8s-ci-robot added this to the v1.20 milestone Nov 13, 2020
@kikisdeliveryservice kikisdeliveryservice added tracked/yes Denotes an enhancement issue is actively being tracked by the Release Team and removed tracked/no Denotes an enhancement issue is NOT actively being tracked by the Release Team labels Nov 13, 2020
@kikisdeliveryservice
Copy link
Member

As an update: kubernetes/kubernetes#96551 has merged and we are waiting for sufficient runs to promote to conformance via another pr (kubernetes/kubernetes#96551 (comment))

@kikisdeliveryservice
Copy link
Member

Looks like the conformance tests are in. Updating the tracking sheet.

@SergeyKanzhelev
Copy link
Member

@kikisdeliveryservice thank you!

@hh
Copy link
Member

hh commented Nov 19, 2020

Congrats on the Conformance Test Promotion:

https://apisnoop.cncf.io/1.20.0/stable/node

image

@hh
Copy link
Member

hh commented Nov 19, 2020

https://apisnoop.cncf.io/conformance-progress/endpoints/1.20.0?filter=promoted-with-tests

image

@SergeyKanzhelev
Copy link
Member

@tallclair can you please fix the link in the issue description to: https://github.com/kubernetes/enhancements/tree/master/keps/sig-node/585-runtime-class

image

@kikisdeliveryservice
Copy link
Member

Hey @SergeyKanzhelev @tallclair

Since this is now GA and the KEP has an implemented status, you can close this tracking issue.

Thanks!
Kirsten

@SergeyKanzhelev
Copy link
Member

/close

It will be great if somebody can fix the description of the issue as this issue is linked from the 1.20 release notes and the link to actual description is broken.

@k8s-ci-robot
Copy link
Contributor

@SergeyKanzhelev: Closing this issue.

In response to this:

/close

It will be great if somebody can fix the description of the issue as this issue is linked from the 1.20 release notes and the link to actual description is broken.

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.

@kikisdeliveryservice
Copy link
Member

I fixed it earlier @SergeyKanzhelev ☺️

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API kind/feature Categorizes issue or PR as related to a new feature. priority/important-soon Must be staffed and worked on either currently, or very soon, ideally in time for the next release. sig/node Categorizes an issue or PR as relevant to SIG Node. stage/stable Denotes an issue tracking an enhancement targeted for Stable/GA status
Projects
None yet
Development

No branches or pull requests