Skip to content

Commit 9a66f87

Browse files
Update Release Signoff Checklist for KEP-1495 Volume Populators
1 parent 62039f1 commit 9a66f87

File tree

1 file changed

+37
-21
lines changed
  • keps/sig-storage/1495-volume-populators

1 file changed

+37
-21
lines changed

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

Lines changed: 37 additions & 21 deletions
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+
- [Integration Tests](#integration-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,17 @@ 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+
#### Integration Tests
348+
349+
- [pull-kubernetes-csi-lib-volume-populator dashboard](https://testgrid.k8s.io/sig-storage-csi-other#pull-kubernetes-csi-lib-volume-populator)
350+
- [pull-kubernetes-csi-volume-data-source-validator dashboard](https://testgrid.k8s.io/sig-storage-csi-other#pull-kubernetes-csi-volume-data-source-validator)
351+
340352
### Graduation Criteria
341353

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

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

362374
### Upgrade / Downgrade Strategy
363375

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

435447
### Monitoring Requirements
436448

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

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

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

0 commit comments

Comments
 (0)