Skip to content

Commit da43f51

Browse files
committed
Remove template comments from completed SIG Network KEPs
1 parent 26493ca commit da43f51

File tree

9 files changed

+1
-615
lines changed

9 files changed

+1
-615
lines changed

keps/sig-network/1453-ingress-api/README.md

Lines changed: 0 additions & 291 deletions
Original file line numberDiff line numberDiff line change
@@ -1,81 +1,5 @@
1-
<!--
2-
**Note:** When your KEP is complete, all of these comment blocks should be removed.
3-
4-
To get started with this template:
5-
6-
- [x] **Pick a hosting SIG.**
7-
Make sure that the problem space is something the SIG is interested in taking
8-
up. KEPs should not be checked in without a sponsoring SIG.
9-
- [x] **Create an issue in kubernetes/enhancements**
10-
When filing an enhancement tracking issue, please ensure to complete all
11-
fields in that template. One of the fields asks for a link to the KEP. You
12-
can leave that blank until this KEP is filed, and then go back to the
13-
enhancement and add the link.
14-
- [x] **Make a copy of this template directory.**
15-
Copy this template into the owning SIG's directory and name it
16-
`NNNN-short-descriptive-title`, where `NNNN` is the issue number (with no
17-
leading-zero padding) assigned to your enhancement above.
18-
- [x] **Fill out as much of the kep.yaml file as you can.**
19-
At minimum, you should fill in the "title", "authors", "owning-sig",
20-
"status", and date-related fields.
21-
- [x] **Fill out this file as best you can.**
22-
At minimum, you should fill in the "Summary", and "Motivation" sections.
23-
These should be easy if you've preflighted the idea of the KEP with the
24-
appropriate SIG(s).
25-
- [x] **Create a PR for this KEP.**
26-
Assign it to people in the SIG that are sponsoring this process.
27-
- [x] **Merge early and iterate.**
28-
Avoid getting hung up on specific details and instead aim to get the goals of
29-
the KEP clarified and merged quickly. The best way to do this is to just
30-
start with the high-level sections and fill out details incrementally in
31-
subsequent PRs.
32-
33-
Just because a KEP is merged does not mean it is complete or approved. Any KEP
34-
marked as a `provisional` is a working document and subject to change. You can
35-
denote sections that are under active debate as follows:
36-
37-
```
38-
<<[UNRESOLVED optional short context or usernames ]>>
39-
Stuff that is being argued.
40-
<<[/UNRESOLVED]>>
41-
```
42-
43-
When editing KEPS, aim for tightly-scoped, single-topic PRs to keep discussions
44-
focused. If you disagree with what is already in a document, open a new PR
45-
with suggested changes.
46-
47-
One KEP corresponds to one "feature" or "enhancement", for its whole lifecycle.
48-
You do not need a new KEP to move from beta to GA, for example. If there are
49-
new details that belong in the KEP, edit the KEP. Once a feature has become
50-
"implemented", major changes should get new KEPs.
51-
52-
The canonical place for the latest set of instructions (and the likely source
53-
of this file) is [here](/keps/NNNN-kep-template/README.md).
54-
55-
**Note:** Any PRs to move a KEP to `implementable` or significant changes once
56-
it is marked `implementable` must be approved by each of the KEP approvers.
57-
If any of those approvers is no longer appropriate than changes to that list
58-
should be approved by the remaining approvers and/or the owning SIG (or
59-
SIG Architecture for cross cutting KEPs).
60-
-->
611
# KEP-1453: Graduate Ingress API to GA
622

63-
<!--
64-
This is the title of your KEP. Keep it short, simple, and descriptive. A good
65-
title can help communicate what the KEP is and should be considered as part of
66-
any review.
67-
-->
68-
69-
<!--
70-
A table of contents is helpful for quickly jumping to sections of a KEP and for
71-
highlighting any additional information provided beyond the standard KEP
72-
template.
73-
74-
Ensure the TOC is wrapped with
75-
<code>&lt;!-- toc --&rt;&lt;!-- /toc --&rt;</code>
76-
tags, and then generate with `hack/update-toc.sh`.
77-
-->
78-
793
<!-- toc -->
804
- [Release Signoff Checklist](#release-signoff-checklist)
815
- [Summary](#summary)
@@ -181,40 +105,12 @@ Items marked with (R) are required *prior to targeting to a milestone / release*
181105

182106
## Summary
183107

184-
<!--
185-
This section is incredibly important for producing high quality user-focused
186-
documentation such as release notes or a development roadmap. It should be
187-
possible to collect this information before implementation begins in order to
188-
avoid requiring implementors to split their attention between writing release
189-
notes and implementing the feature itself. KEP editors, SIG Docs, and SIG PM
190-
should help to ensure that the tone and content of the `Summary` section is
191-
useful for a wide audience.
192-
193-
A good summary is probably at least a paragraph in length.
194-
195-
Both in this section and below, follow the guidelines of the [documentation
196-
style guide]. In particular, wrap lines to a reasonable length, to make it
197-
easier for reviewers to cite specific portions, and to minimize diff churn on
198-
updates.
199-
200-
[documentation style guide]: https://github.com/kubernetes/community/blob/master/contributors/guide/style-guide.md
201-
-->
202-
203108
- Move the Ingress resource from the current API group
204109
(extensions.v1beta1) to networking.v1beta1.
205110
- Graduate the Ingress API with bug fixes to GA.
206111

207112
## Motivation
208113

209-
<!--
210-
This section is for explicitly listing the motivation, goals and non-goals of
211-
this KEP. Describe why the change is important and the benefits to users. The
212-
motivation section can optionally provide links to [experience reports][] to
213-
demonstrate the interest in a KEP within the wider Kubernetes community.
214-
215-
[experience reports]: https://github.com/golang/go/wiki/ExperienceReports
216-
-->
217-
218114
The `extensions` API group is considered deprecated. Ingress is the
219115
last non-deprecated API in that group. All other types have been
220116
migrated to other permanent API groups. Such an API group migration
@@ -256,11 +152,6 @@ Ingress API or an entirely different API with a superset of features.
256152

257153
### Goals
258154

259-
<!--
260-
List the specific goals of the KEP. What is it trying to achieve? How will we
261-
know that this has succeeded?
262-
-->
263-
264155
A detailed list of the changes being proposed is given in the Design
265156
section below.
266157

@@ -275,51 +166,19 @@ section below.
275166

276167
### Non-Goals
277168

278-
<!--
279-
What is out of scope for this KEP? Listing non-goals helps to focus discussion
280-
and make progress.
281-
-->
282-
283169
## Proposal
284170

285-
<!--
286-
This is where we get down to the specifics of what the proposal actually is.
287-
This should have enough detail that reviewers can understand exactly what
288-
you're proposing, but should not include things like API designs or
289-
implementation. The "Design Details" section below is for the real
290-
nitty-gritty.
291-
-->
292-
293171
- See [Goals](#goals) and [Motivation](#motivation)
294172

295173
### Risks and Mitigations
296174

297-
<!--
298-
What are the risks of this proposal and how do we mitigate. Think broadly.
299-
For example, consider both security and how this will impact the larger
300-
kubernetes ecosystem.
301-
302-
How will security be reviewed and by whom?
303-
304-
How will UX be reviewed and by whom?
305-
306-
Consider including folks that also work outside the SIG or subproject.
307-
-->
308-
309175
- No additional security tests have been conducted outside of the normal
310176
review from the CNCF and the API reviewers.
311177
- UX reviews have been presented to user groups within KubeCon workshops
312178
and survey results. The API has existed in beta since Kubernetes v1.1.
313179

314180
## Design Details
315181

316-
<!--
317-
This section should contain enough information that the specifics of your
318-
change are understandable. This may include API specs (though not always
319-
required) or even code snippets. If there's any ambiguity about HOW your
320-
proposal will be implemented, this is the place to discuss them.
321-
-->
322-
323182
This section describes the API fixes proposed for GA.
324183

325184
### Summary of the proposed changes
@@ -795,85 +654,13 @@ backend:
795654
796655
### Test Plan
797656
798-
<!--
799-
**Note:** *Not required until targeted at a release.*
800-
801-
Consider the following in developing a test plan for this enhancement:
802-
- Will there be e2e and integration tests, in addition to unit tests?
803-
- How will it be tested in isolation vs with other components?
804-
805-
No need to outline all of the test cases, just the general strategy. Anything
806-
that would count as tricky in the implementation and anything particularly
807-
challenging to test should be called out.
808-
809-
All code is expected to have adequate tests (eventually with coverage
810-
expectations). Please adhere to the [Kubernetes testing guidelines][testing-guidelines]
811-
when drafting this test plan.
812-
813-
[testing-guidelines]: https://git.k8s.io/community/contributors/devel/sig-testing/testing.md
814-
-->
815-
816657
- Copy existing Ingress tests with changes to new resource group
817658
- Add roundtrip tests for any new/changed resources
818659
- CRUD e2e test exercising all verbs and endpoints on Ingress suitable for promotion to conformance
819660
- CRUD e2e test exercising all verbs and endpoints on IngressClass suitable for promotion to conformance
820661
821662
### Graduation Criteria
822663
823-
<!--
824-
**Note:** *Not required until targeted at a release.*
825-
826-
Define graduation milestones.
827-
828-
These may be defined in terms of API maturity, or as something else. The KEP
829-
should keep this high-level with a focus on what signals will be looked at to
830-
determine graduation.
831-
832-
Consider the following in developing the graduation criteria for this enhancement:
833-
- [Maturity levels (`alpha`, `beta`, `stable`)][maturity-levels]
834-
- [Deprecation policy][deprecation-policy]
835-
836-
Clearly define what graduation means by either linking to the [API doc
837-
definition](https://kubernetes.io/docs/concepts/overview/kubernetes-api/#api-versioning),
838-
or by redefining what graduation means.
839-
840-
In general, we try to use the same stages (alpha, beta, GA), regardless how the
841-
functionality is accessed.
842-
843-
[maturity-levels]: https://git.k8s.io/community/contributors/devel/sig-architecture/api_changes.md#alpha-beta-and-stable-versions
844-
[deprecation-policy]: https://kubernetes.io/docs/reference/using-api/deprecation-policy/
845-
846-
Below are some examples to consider, in addition to the aforementioned [maturity levels][maturity-levels].
847-
848-
#### Alpha -> Beta Graduation
849-
850-
- Gather feedback from developers and surveys
851-
- Complete features A, B, C
852-
- Tests are in Testgrid and linked in KEP
853-
854-
#### Beta -> GA Graduation
855-
856-
- N examples of real world usage
857-
- N installs
858-
- More rigorous forms of testing e.g., downgrade tests and scalability tests
859-
- Allowing time for feedback
860-
861-
**Note:** Generally we also wait at least 2 releases between beta and
862-
GA/stable, since there's no opportunity for user feedback, or even bug reports,
863-
in back-to-back releases.
864-
865-
#### Removing a deprecated flag
866-
867-
- Announce deprecation and support policy of the existing flag
868-
- Two versions passed since introducing the functionality which deprecates the flag (to address version skew)
869-
- Address feedback on usage/changed behavior, provided on GitHub issues
870-
- Deprecate the flag
871-
872-
**For non-optional features moving to GA, the graduation criteria must include [conformance tests].**
873-
874-
[conformance tests]: https://git.k8s.io/community/contributors/devel/sig-architecture/conformance-tests.md
875-
-->
876-
877664
### API group move to `networking.k8s.io/v1beta1`
878665

879666
- [x] 1.14: Ingress API exists and has parity with existing
@@ -894,18 +681,6 @@ in back-to-back releases.
894681

895682
### Upgrade / Downgrade Strategy
896683

897-
<!--
898-
If applicable, how will the component be upgraded and downgraded? Make sure
899-
this is in the test plan.
900-
901-
Consider the following in developing an upgrade/downgrade strategy for this
902-
enhancement:
903-
- What changes (in invocations, configurations, API use, etc.) is an existing
904-
cluster required to make on upgrade in order to keep previous behavior?
905-
- What changes (in invocations, configurations, API use, etc.) is an existing
906-
cluster required to make on upgrade in order to make use of the enhancement?
907-
-->
908-
909684
- Field changes such as backend to defaultBackend are only implemented in the v1 API and tests are added to
910685
ensure roundtripping
911686
- Newer features such as regex requirements for paths were released in 1.18 but could be updated and not
@@ -914,51 +689,12 @@ are necessary.
914689

915690
### Version Skew Strategy
916691

917-
<!--
918-
If applicable, how will the component handle version skew with other
919-
components? What are the guarantees? Make sure this is in the test plan.
920-
921-
Consider the following in developing a version skew strategy for this
922-
enhancement:
923-
- Does this enhancement involve coordinating behavior in the control plane and
924-
in the kubelet? How does an n-2 kubelet without this feature available behave
925-
when this feature is used?
926-
- Will any other components on the node change? For example, changes to CSI,
927-
CRI or CNI may require updating that component before the kubelet.
928-
-->
929-
930692
- See [Upgrade / Downgrade Strategy](#upgrade-/-downgrade-strategy)
931693

932694
## Production Readiness Review Questionnaire
933695

934-
<!--
935-
936-
Production readiness reviews are intended to ensure that features merging into
937-
Kubernetes are observable, scalable and supportable, can be safely operated in
938-
production environments, and can be disabled or rolled back in the event they
939-
cause increased failures in production. See more in the PRR KEP at
940-
https://git.k8s.io/enhancements/keps/sig-architecture/20190731-production-readiness-review-process.md
941-
942-
Production readiness review questionnaire must be completed for features in
943-
v1.19 or later, but is non-blocking at this time. That is, approval is not
944-
required in order to be in the release.
945-
946-
In some cases, the questions below should also have answers in `kep.yaml`. This
947-
is to enable automation to verify the presence of the review, and reduce review
948-
burden and latency.
949-
950-
The KEP must have a approver from the
951-
[`prod-readiness-approvers`](http://git.k8s.io/enhancements/OWNERS_ALIASES)
952-
team. Please reach out on the
953-
[#prod-readiness](https://kubernetes.slack.com/archives/CPNHUMN74) channel if
954-
you need any help or guidance.
955-
956-
-->
957-
958696
### Feature enablement and rollback
959697

960-
<!-- _This section must be completed when targeting alpha to a release._ -->
961-
962698
* **How can this feature be enabled / disabled in a live cluster?**
963699
- [ ] Feature gate (also fill in values in `kep.yaml`)
964700
- Feature gate name:
@@ -1163,17 +899,6 @@ _This section must be completed when targeting beta graduation to a release._
1163899

1164900
## Implementation History
1165901

1166-
<!--
1167-
Major milestones in the life cycle of a KEP should be tracked in this section.
1168-
Major milestones might include
1169-
- the `Summary` and `Motivation` sections being merged signaling SIG acceptance
1170-
- the `Proposal` section being merged signaling agreement on a proposed design
1171-
- the date implementation started
1172-
- the first Kubernetes release where an initial version of the KEP was available
1173-
- the version of Kubernetes where the KEP graduated to general availability
1174-
- when the KEP was retired or superseded
1175-
-->
1176-
1177902
### 1.15
1178903

1179904
- [x] Update API server to persist in networking.k8s.io/v1beta1 kubernetes/kubernetes#77139
@@ -1221,18 +946,8 @@ Major milestones might include
1221946

1222947
## Drawbacks
1223948

1224-
<!--
1225-
Why should this KEP _not_ be implemented?
1226-
-->
1227-
1228949
## Alternatives
1229950

1230-
<!--
1231-
What other approaches did you consider and why did you rule them out? These do
1232-
not need to be as detailed as the proposal, but should include enough
1233-
information to express the idea and why it was not acceptable.
1234-
-->
1235-
1236951
See [Motivations](#motivations)
1237952

1238953
## Appendix
@@ -1382,9 +1097,3 @@ is likely impossible across the [many implementations][regex-survey].
13821097

13831098

13841099
## Infrastructure Needed (optional)
1385-
1386-
<!--
1387-
Use this section if you need things from the project/SIG. Examples include a
1388-
new subproject, repos requested, github details. Listing these here allows a
1389-
SIG to get the process for these resources started right away.
1390-
-->

0 commit comments

Comments
 (0)