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

Add Ephemeral Containers to the Kubernetes core API #59416

Merged
merged 3 commits into from
Jul 22, 2019

Conversation

verb
Copy link
Contributor

@verb verb commented Feb 6, 2018

What this PR does / why we need it: This updates the Kubernetes API as described in kubernetes/community#1269 to add Ephemeral Containers. The new subresource of pod is hidden behind an alpha feature flag.

Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
WIP #27140
WIP #10834

Special notes for your reviewer:
/assign @yujuhong
/cc @liggitt @dchen1107 @smarterclayton @lavalamp

Release note:

NONE

Follow Up PRs:
I've split some topics to separate PRs to reduce load on API reviewer. Once this API change is submitted I'll rebase these and find additional reviewers:

To Do:

  • Check for code iterating containers that should be updated to include ephemeral containers
  • Resolve question about whether it would be better to copy Container fields to EphemeralContainer rather than inlining.
  • Implement a test to make sure fields in Container and EphemeralContainer remain in sync.

@k8s-ci-robot k8s-ci-robot added the release-note-none Denotes a PR that doesn't merit a release note. label Feb 6, 2018
@k8s-ci-robot k8s-ci-robot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. labels Feb 6, 2018
@k8s-github-robot k8s-github-robot added the kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API label Feb 6, 2018
@verb verb force-pushed the debug-api branch 2 times, most recently from 1b53e8a to e27bc24 Compare February 8, 2018 12:46
@verb verb changed the title Add Ephemeral Containers to the Kubernetes core API WIP: Add Ephemeral Containers to the Kubernetes core API Feb 15, 2018
@k8s-ci-robot k8s-ci-robot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 15, 2018
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Feb 24, 2018
@k8s-ci-robot k8s-ci-robot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. labels Apr 30, 2018
@verb verb force-pushed the debug-api branch 2 times, most recently from 5c00903 to ede1fb2 Compare April 30, 2018 11:11
@verb verb changed the title WIP: Add Ephemeral Containers to the Kubernetes core API Add Ephemeral Containers to the Kubernetes core API Apr 30, 2018
@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 Apr 30, 2018
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 10, 2018
@k8s-ci-robot k8s-ci-robot removed the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 15, 2018
@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label May 16, 2018
@yujuhong
Copy link
Contributor

Need api reviewers/approvers.

@liggitt @lavalamp @smarterclayton does anyone of you have time to review?

@verb verb force-pushed the debug-api branch 2 times, most recently from 7e2d87b to d378931 Compare July 1, 2019 19:07
@verb verb force-pushed the debug-api branch 2 times, most recently from 8423dc3 to 3d9a12d Compare July 5, 2019 10:36
@verb
Copy link
Contributor Author

verb commented Jul 5, 2019

/retest

@dims
Copy link
Member

dims commented Jul 16, 2019

/retest

@@ -2843,6 +2843,17 @@ type PodSpec struct {
// +patchMergeKey=name
// +patchStrategy=merge
Containers []Container `json:"containers" patchStrategy:"merge" patchMergeKey:"name" protobuf:"bytes,2,rep,name=containers"`
// EphemeralContainers is the list of ephemeral containers that run in this pod. Ephemeral containers
Copy link
Contributor

Choose a reason for hiding this comment

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

Note that the name should be ephemeralContainers in Godoc when referencing the field. I'm ok with this being a follow up if there's nothing else in this pass.

@smarterclayton
Copy link
Contributor

/lgtm
/approve

Follow up PRs already identified, I'll do a godoc pass before we hit freeze.

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

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: smarterclayton, verb

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 Jul 22, 2019
@k8s-ci-robot k8s-ci-robot merged commit 7e6b70f into kubernetes:master Jul 22, 2019
@saschagrunert
Copy link
Member

Hey @verb 👋, do you think it would be possible to change the release notes entry at this PR to document the user facing changes? It is currently marked as NONE but we definitely want to add this one to the notes. :)

@verb
Copy link
Contributor Author

verb commented Jul 24, 2019

Hi @saschagrunert, Right now it's just a disconnected API, but #59484 updates the kubelet to launch ephemeral containers so I thought it'd be a good place for release notes. I expect it to merge in time for 1.16. Would that work?

@saschagrunert
Copy link
Member

Hi @saschagrunert, Right now it's just a disconnected API, but #59484 updates the kubelet to launch ephemeral containers so I thought it'd be a good place for release notes. I expect it to merge in time for 1.16. Would that work?

That would be wonderful, thank you 🙏

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. area/apiserver area/code-generation area/kubelet area/release-eng Issues or PRs related to the Release Engineering subproject area/test cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. kind/api-change Categorizes issue or PR as related to adding, removing, or otherwise changing an API lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note-none Denotes a PR that doesn't merit a release note. sig/api-machinery Categorizes an issue or PR as relevant to SIG API Machinery. sig/apps Categorizes an issue or PR as relevant to SIG Apps. sig/architecture Categorizes an issue or PR as relevant to SIG Architecture. sig/auth Categorizes an issue or PR as relevant to SIG Auth. sig/cli Categorizes an issue or PR as relevant to SIG CLI. sig/cloud-provider Categorizes an issue or PR as relevant to SIG Cloud Provider. sig/cluster-lifecycle Categorizes an issue or PR as relevant to SIG Cluster Lifecycle. sig/node Categorizes an issue or PR as relevant to SIG Node. sig/release Categorizes an issue or PR as relevant to SIG Release. sig/storage Categorizes an issue or PR as relevant to SIG Storage. sig/testing Categorizes an issue or PR as relevant to SIG Testing. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.
Projects
Status: API review completed, 1.16
Development

Successfully merging this pull request may close these issues.