Skip to content

Commit 9f7ee23

Browse files
authored
Merge pull request #5023 from sunnylovestiramisu/updateKEP
Update Release Signoff Checklist for KEP-1495 Volume Populators
2 parents f87a2bc + f4f7df2 commit 9f7ee23

File tree

3 files changed

+44
-25
lines changed

3 files changed

+44
-25
lines changed

keps/prod-readiness/sig-storage/1495.yaml

+2
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,5 @@ alpha:
33
approver: "@deads2k"
44
beta:
55
approver: "@deads2k"
6+
stable:
7+
approver: "@deads2k"

keps/sig-storage/1495-volume-populators/README.md

+38-21
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616
- [Risks and Mitigations](#risks-and-mitigations)
1717
- [Design Details](#design-details)
1818
- [Test Plan](#test-plan)
19+
- [Unit Tests](#unit-tests)
20+
- [e2e Tests](#e2e-tests)
1921
- [Graduation Criteria](#graduation-criteria)
2022
- [Alpha -> Beta Graduation](#alpha---beta-graduation)
2123
- [Beta -> GA Graduation](#beta---ga-graduation)
@@ -28,6 +30,7 @@
2830
- [Dependencies](#dependencies)
2931
- [Scalability](#scalability)
3032
- [Troubleshooting](#troubleshooting)
33+
- [Drawbacks](#drawbacks)
3134
- [Implementation History](#implementation-history)
3235
- [Alternatives](#alternatives)
3336
- [Validating webhook](#validating-webhook)
@@ -38,27 +41,25 @@
3841
**ACTION REQUIRED:** In order to merge code into a release, there must be an issue in [kubernetes/enhancements] referencing this KEP and targeting a release milestone **before [Enhancement Freeze](https://github.com/kubernetes/sig-release/tree/master/releases)
3942
of the targeted release**.
4043

41-
For enhancements that make changes to code or processes/procedures in core Kubernetes i.e., [kubernetes/kubernetes], we require the following Release Signoff checklist to be completed.
42-
43-
Check these off as they are completed for the Release Team to track. These checklist items _must_ be updated for the enhancement to be released.
44-
45-
- [ ] kubernetes/enhancements issue in release milestone, which links to KEP (this should be a link to the KEP location in kubernetes/enhancements, not the initial KEP PR)
46-
- [ ] KEP approvers have set the KEP status to `implementable`
47-
- [ ] Design details are appropriately documented
48-
- [ ] Test plan is in place, giving consideration to SIG Architecture and SIG Testing input
49-
- [ ] Graduation criteria is in place
44+
- [X] (R) Enhancement issue in release milestone, which links to KEP dir in [kubernetes/enhancements] (not the initial KEP PR)
45+
- [X] (R) KEP approvers have approved the KEP status as `implementable`
46+
- [X] (R) Design details are appropriately documented
47+
- [X] (R) Test plan is in place, giving consideration to SIG Architecture and SIG Testing input (including test refactors)
48+
- [ ] e2e Tests for all Beta API Operations ([pull-kubernetes-csi-lib-volume-populator dashboard](https://testgrid.k8s.io/sig-storage-csi-other#pull-kubernetes-csi-lib-volume-populator), [pull-kubernetes-csi-volume-data-source-validator dashboard](https://testgrid.k8s.io/sig-storage-csi-other#pull-kubernetes-csi-volume-data-source-validator))
49+
- [ ] (R) Ensure GA e2e tests meet requirements for [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md)
50+
- [ ] (R) Minimum Two Week Window for GA e2e tests to prove flake free
51+
- [X] (R) Graduation criteria is in place
52+
- [ ] (R) [all GA Endpoints](https://github.com/kubernetes/community/pull/1806) must be hit by [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md)
53+
- [X] (R) Production readiness review completed
54+
- [ ] (R) Production readiness review approved
5055
- [ ] "Implementation History" section is up-to-date for milestone
51-
- [ ] User-facing documentation has been created in [kubernetes/website], for publication to [kubernetes.io]
52-
- [ ] Supporting documentation e.g., additional design documents, links to mailing list discussions/SIG meetings, relevant PRs/issues, release notes
53-
54-
**Note:** Any PRs to move a KEP to `implementable` or significant changes once it is marked `implementable` should be approved by each of the KEP approvers. If any of those approvers is no longer appropriate than changes to that list should be approved by the remaining approvers and/or the owning SIG (or SIG-arch for cross cutting KEPs).
55-
56-
**Note:** This checklist is iterative and should be reviewed and updated every time this enhancement is being considered for a milestone.
56+
- [X] User-facing documentation has been created in [kubernetes/website], for publication to [kubernetes.io]
57+
- [X] Supporting documentation—e.g., additional design documents, links to mailing list discussions/SIG meetings, relevant PRs/issues, release notes
5758

5859
[kubernetes.io]: https://kubernetes.io/
59-
[kubernetes/enhancements]: https://github.com/kubernetes/enhancements/issues
60-
[kubernetes/kubernetes]: https://github.com/kubernetes/kubernetes
61-
[kubernetes/website]: https://github.com/kubernetes/website
60+
[kubernetes/enhancements]: https://git.k8s.io/enhancements
61+
[kubernetes/kubernetes]: https://git.k8s.io/kubernetes
62+
[kubernetes/website]: https://git.k8s.io/website
6263

6364
## Summary
6465

@@ -337,6 +338,18 @@ To test the `volume-data-source-validator`, we need to check the following cases
337338
- Creation of a PVC with a CRD `DataSourceRef` that's registered by a
338339
volume populator causes no events.
339340

341+
#### Unit Tests
342+
343+
- [controller tests](https://github.com/kubernetes-csi/lib-volume-populator/blob/master/populator-machinery/controller_test.go)
344+
- [util tests](https://github.com/kubernetes-csi/lib-volume-populator/blob/master/populator-machinery/util_test.go)
345+
- [metrics tests](https://github.com/kubernetes-csi/lib-volume-populator/blob/master/populator-machinery/metrics_test.go)
346+
347+
#### e2e Tests
348+
349+
- [provisioning.go Creating VolumePopulator CR datasource and Provision](https://github.com/kubernetes/kubernetes/blob/master/test/e2e/storage/testsuites/provisioning.go#L367)
350+
- [pull-kubernetes-csi-lib-volume-populator dashboard](https://testgrid.k8s.io/sig-storage-csi-other#pull-kubernetes-csi-lib-volume-populator)
351+
- [pull-kubernetes-csi-volume-data-source-validator dashboard](https://testgrid.k8s.io/sig-storage-csi-other#pull-kubernetes-csi-volume-data-source-validator)
352+
340353
### Graduation Criteria
341354

342355
#### Alpha -> Beta Graduation
@@ -357,7 +370,7 @@ To test the `volume-data-source-validator`, we need to check the following cases
357370

358371
- Distributions including data populators as part of their distros (possibly
359372
a backup/restore implementation layered on top)
360-
- Allowing time for feedback
373+
- Feedback issues are addressed, please [GA Blocker list](https://github.com/kubernetes-csi/lib-volume-populator/issues?q=is%3Aissue+%22GA+Blocker%22)
361374

362375
### Upgrade / Downgrade Strategy
363376

@@ -434,8 +447,6 @@ fields of API types, flags, etc.?**
434447

435448
### Monitoring Requirements
436449

437-
_This section must be completed when targeting beta graduation to a release._
438-
439450
* **How can an operator determine if the feature is in use by workloads?**
440451
Simply look at the data source field of the PVCs. Non-empty data sources with
441452
a Kind other than snapshot and PVC indicate this feature is in use. Also the
@@ -573,6 +584,12 @@ resource usage (CPU, RAM, disk, IO, ...) in any components?**
573584
is determined, a populator-specific investigation will be needed, starting
574585
from looking at the logs for that populator.
575586

587+
## Drawbacks
588+
589+
`DataSource` and `DataSourceRef` cannot be pointed to different resources.
590+
While this is by design, it does not solve certain use case like restore volume
591+
from VolumeSnapshot, and then do volume population.
592+
576593
## Implementation History
577594

578595
- The idea of data populators has been discussed abstractly in SIG-storage

keps/sig-storage/1495-volume-populators/kep.yaml

+4-4
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ participating-sigs:
77
- sig-api-machinery
88
status: implementable
99
creation-date: 2019-12-03
10-
last-updated: 2022-01-31
10+
last-updated: 2024-01-16
1111
reviewers:
1212
- "@thockin"
1313
- "@saad-ali"
@@ -18,12 +18,12 @@ approvers:
1818
- "@saad-ali"
1919
replaces:
2020
- "/keps/sig-storage/20200120-generic-data-populators.md"
21-
stage: beta
22-
latest-milestone: "v1.23"
21+
stage: stable
22+
latest-milestone: "v1.33"
2323
milestone:
2424
alpha: "v1.18"
2525
beta: "v1.24"
26-
stable: "v1.25"
26+
stable: "v1.33"
2727
feature-gates:
2828
- name: AnyVolumeDataSource
2929
components:

0 commit comments

Comments
 (0)