Skip to content

Add blog post about upcoming API removals#15203

Merged
k8s-ci-robot merged 1 commit intokubernetes:masterfrom
vllry:api-removal-timeline
Jul 18, 2019
Merged

Add blog post about upcoming API removals#15203
k8s-ci-robot merged 1 commit intokubernetes:masterfrom
vllry:api-removal-timeline

Conversation

@vllry
Copy link
Copy Markdown
Contributor

@vllry vllry commented Jun 29, 2019

Adds a blog post about the deprecated APIs that are due for removal soon in Kubernetes.

@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. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. area/blog Issues or PRs related to the Kubernetes Blog subproject language/en Issues or PRs related to English language sig/docs Categorizes an issue or PR as relevant to SIG Docs. labels Jun 29, 2019
@k8s-ci-robot k8s-ci-robot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jun 29, 2019
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jun 29, 2019

I wanted to clarify - are the "actual removal" vs "not enabled" timelines different? It would be nice to specify.

@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jun 29, 2019

/assign @zacharysarah
/assign @castrojo

@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jun 29, 2019

This is also at the "minimum level of approachability" I feel comfortable publishing. I know this will be a mysterious/scary announcement for many users. I'm not sure how much more approachable I should aim to make it - @zacharysarah I would appreciate your guidance there.

@vllry vllry force-pushed the api-removal-timeline branch from 17f17d3 to 216549e Compare June 29, 2019 18:01
@netlify
Copy link
Copy Markdown

netlify bot commented Jun 29, 2019

Deploy preview for kubernetes-io-master-staging ready!

Built with commit 17f17d3

https://deploy-preview-15203--kubernetes-io-master-staging.netlify.com

@netlify
Copy link
Copy Markdown

netlify bot commented Jun 29, 2019

Deploy preview for kubernetes-io-master-staging ready!

Built with commit 537e76e

https://deploy-preview-15203--kubernetes-io-master-staging.netlify.com

@dims
Copy link
Copy Markdown
Member

dims commented Jun 29, 2019

/cc @liggitt

@k8s-ci-robot k8s-ci-robot requested a review from liggitt June 29, 2019 22:25
@vllry vllry force-pushed the api-removal-timeline branch from 216549e to 39bce56 Compare June 29, 2019 22:34
Copy link
Copy Markdown
Contributor

@geekygirldawn geekygirldawn left a comment

Choose a reason for hiding this comment

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

This is great! I only made a few tiny, nit-picky suggestions.

re-organized or upgraded. When this happens, the old API is deprecated, and then
eventually removed.

There are **4** sets of resources with APIs that are deprecated, will be stop
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

maybe this would be better as

... are deprecated, and will stop being ...

your configuration and integrations now!

* Change YAML files to use the newer APIs.
* Update the `apiVersion` field.
Copy link
Copy Markdown
Member

@liggitt liggitt Jul 1, 2019

Choose a reason for hiding this comment

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

For Ingress, this is sufficient.

For the workload APIs, there is more involved to get objects you can create. At minimum:

  • change apiVersion to apps/v1
  • populate spec.selector.matchLabels with the contents of spec.template.metadata.labels if spec.selector does not already exist
  • populate metadata.labels with the contents of spec.template.metadata.labels if metadata.labels does not already exist

kubectl convert -f ... --output-version apps/v1 will also perform the conversion for you, if everything in the manifest can be converted to apps/v1.

That said, an automated conversion will also carry over some sub-optimal defaults that were improved in apps/v1. A few examples:

  • Deployments changed spec.revisionHistoryLimit to default to 10 to avoid infinite replicaset growth on repeated rollouts. Old versions defaulted to MAX_INT.
  • DaemonSets changed default update strategy from OnDelete to RollingUpdate

@kubernetes/sig-apps-api-reviews is there a comprehensive doc of the differences in defaults between apps/v1 and earlier versions, and a migration guide?

@liggitt
Copy link
Copy Markdown
Member

liggitt commented Jul 1, 2019

/hold

wanted to make sure #15203 (comment) was addressed before merge

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 1, 2019
Copy link
Copy Markdown
Contributor

@zacharysarah zacharysarah left a comment

Choose a reason for hiding this comment

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

@vllry You're off to a great start! ✨ I left some edits for clarity and mechanics.

* DaemonSet, Deployment, StatefulSet, and ReplicaSet
* Ingress

None of these resources are being removed from Kubernetes. NetworkPolicies,
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

None of these resources are being removed from Kubernetes.

This is a great thing to specify. 👍


* Change YAML files to use the newer APIs.
* Update the `apiVersion` field.
* Update custom integrations and controllers to use the newer APIs.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Remove periods from the ends of bullet points.

If "call" is more specifically accurate, s/use/call.

@vllry vllry changed the title WIP: Add blog post about upcoming API removals Add blog post about upcoming API removals Jul 9, 2019
@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 Jul 9, 2019
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 9, 2019

I've addressed all current comments, but should have another pass. It's a separate commit for ease of review, but I can squash if folks prefer.

CC @zacharysarah @liggitt

@vllry vllry force-pushed the api-removal-timeline branch from dd24535 to ca88f06 Compare July 9, 2019 01:33
@liggitt
Copy link
Copy Markdown
Member

liggitt commented Jul 9, 2019

one suggestion on the convert command, technical content lgtm otherwise

@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 9, 2019

one suggestion on the convert command, technical content lgtm otherwise

Done, thanks!

@kbarnard10 kbarnard10 self-assigned this Jul 9, 2019
Copy link
Copy Markdown
Member

@onlydole onlydole left a comment

Choose a reason for hiding this comment

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

Great topic, well written and looks good to me! 👍

@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 11, 2019

I'm not sure how to address the failing tests - I'm guessing it's a quotation issue in the metadata.

@@ -0,0 +1,89 @@
---
layout: blog
title: 'APIs Deprecating Soon: Here\'s What You Need to 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.

Might need to be ”APIs deprecating Soon: Here’s What You Need To 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.

nit, these were deprecated ~years ago... they're being removed in 1.16

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.

Changed accordingly.

@zacharysarah
Copy link
Copy Markdown
Contributor

@vllry 👋

I'm not sure how to address the failing tests - I'm guessing it's a quotation issue in the metadata.

Based on this error, that seems accurate:

11:26:25 AM: Error: Error building site: "/opt/build/repo/content/en/blog/_posts/2019-07-09-some-apis-are-being-deprecated.md:2:1": failed to unmarshal YAML: yaml: line 1: did not find expected key

Maybe try this, inclusive of @liggitt's feedback about timeframe:

title: 'Removing APIs Soon: What You Need to Know'

@vllry vllry force-pushed the api-removal-timeline branch from df4f179 to ee847a9 Compare July 15, 2019 19:53
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 15, 2019

@zacharysarah I fixed the build, will squash commits with your approval.

@zacharysarah
Copy link
Copy Markdown
Contributor

@vllry Thanks for your patience! LGTM, squash away.

/lgtm

squash

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 17, 2019
@vllry vllry force-pushed the api-removal-timeline branch from ee847a9 to ce7552d Compare July 17, 2019 15:11
@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Jul 17, 2019
@vllry vllry force-pushed the api-removal-timeline branch 2 times, most recently from 37be202 to 8efdf19 Compare July 17, 2019 15:13
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 17, 2019

There we are, also bumped the date again. Sorry that took so many back and forths!

@liggitt can we remove the hold?

@vllry vllry changed the title Add blog post about upcoming API removals Do not merge: Add blog post about upcoming API removals Jul 17, 2019
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 17, 2019

Ugh the rebase dropped some edits, I'll fix it when I get to the office.

@vllry vllry force-pushed the api-removal-timeline branch from 8efdf19 to 04aa97c Compare July 17, 2019 17:23
@vllry vllry changed the title Do not merge: Add blog post about upcoming API removals Add blog post about upcoming API removals Jul 17, 2019
@vllry vllry force-pushed the api-removal-timeline branch from 04aa97c to 537e76e Compare July 18, 2019 16:27
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 18, 2019

Re-bumped the date.

@kbarnard10 / @castrojo ?

@kbarnard10
Copy link
Copy Markdown
Contributor

/lgtm
/approve
@vllry Please remove the hold once you're ready to publish!

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

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: kbarnard10

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details 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 18, 2019
@vllry
Copy link
Copy Markdown
Contributor Author

vllry commented Jul 18, 2019

/hold cancel

🚀

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jul 18, 2019
@k8s-ci-robot k8s-ci-robot merged commit 0225023 into kubernetes:master Jul 18, 2019
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/blog Issues or PRs related to the Kubernetes Blog subproject cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. language/en Issues or PRs related to English language lgtm "Looks good to me", indicates that a PR is ready to be merged. sig/docs Categorizes an issue or PR as relevant to SIG Docs. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants