Skip to content

Commit 19af752

Browse files
committed
KEP-3619: updated KEP after alpha release
- updated Test Plans - updated Implementation History - updated Release Signoff Checklist Signed-off-by: Shingo Omura <[email protected]>
1 parent 62cad7d commit 19af752

File tree

1 file changed

+26
-17
lines changed
  • keps/sig-node/3619-supplemental-groups-policy

1 file changed

+26
-17
lines changed

keps/sig-node/3619-supplemental-groups-policy/README.md

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -84,17 +84,17 @@ Items marked with (R) are required *prior to targeting to a milestone / release*
8484
- [x] (R) Enhancement issue in release milestone, which links to KEP dir in [kubernetes/enhancements] (not the initial KEP PR)
8585
- [x] (R) KEP approvers have approved the KEP status as `implementable`
8686
- [x] (R) Design details are appropriately documented
87-
- [ ] (R) Test plan is in place, giving consideration to SIG Architecture and SIG Testing input (including test refactors)
88-
- [ ] e2e Tests for all Beta API Operations (endpoints)
87+
- [x] (R) Test plan is in place, giving consideration to SIG Architecture and SIG Testing input (including test refactors)
88+
- [x] e2e Tests for all Beta API Operations (endpoints)
8989
- [ ] (R) Ensure GA e2e tests meet requirements for [Conformance Tests](https://github.com/kubernetes/community/blob/master/contributors/devel/sig-architecture/conformance-tests.md)
9090
- [ ] (R) Minimum Two Week Window for GA e2e tests to prove flake free
91-
- [ ] (R) Graduation criteria is in place
91+
- [x] (R) Graduation criteria is in place
9292
- [ ] (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)
9393
- [x] (R) Production readiness review completed
9494
- [x] (R) Production readiness review approved
9595
- [x] "Implementation History" section is up-to-date for milestone
96-
- [ ] User-facing documentation has been created in [kubernetes/website], for publication to [kubernetes.io]
97-
- [ ] Supporting documentation—e.g., additional design documents, links to mailing list discussions/SIG meetings, relevant PRs/issues, release notes
96+
- [x] User-facing documentation has been created in [kubernetes/website], for publication to [kubernetes.io]
97+
- [x] Supporting documentation—e.g., additional design documents, links to mailing list discussions/SIG meetings, relevant PRs/issues, release notes
9898

9999
<!--
100100
**Note:** This checklist is iterative and should be reviewed and updated every time this enhancement is being considered for a milestone.
@@ -600,8 +600,9 @@ This can inform certain test coverage improvements that we want to do before
600600
extending the production code to implement this enhancement.
601601
-->
602602

603-
- `k8s.io/kubernetes/pkg/apis/core/validation`: `<date>(t.b.d.)` - `<test coverage>(t.b.d.)`
604-
- validation tests for `PodSecurityContext.SupplementalGroups`, `ContainerStatus.User`
603+
- `k8s.io/kubernetes/pkg/api/pod/util.go`: `2024-08-13` - `68.7%`
604+
- It tests `dropDisabledFields` for `PodSecurityContext.SupplementalGroups`, `ContainerStatus.User` fields
605+
- Note: The test these field values when enabling/disabling this feature.
605606

606607
##### Integration tests
607608

@@ -613,12 +614,7 @@ For Beta and GA, add links to added tests together with links to k8s-triage for
613614
https://storage.googleapis.com/k8s-triage/index.html
614615
-->
615616

616-
- Kubernetes API
617-
- When `SupplementalGroupsPolicy=Strict`, groups of the container process must be ones specified by API: <link to test coverage(t.b.d.)>
618-
- When `SupplementalGroupsPolicy=Merge`, groups of the container process contains both groups specified by API and groups of the primary user from the image: <link to test coverage(t.b.d.)>
619-
- For running pods, `ContainerStatus.User` contains the correct identities of the containers: <link to test coverage(t.b.d.)>
620-
- CRI
621-
- I will also add symmetrical integration tests to https://github.com/kubernetes-sigs/cri-tools
617+
See [e2e tests](#e2e-tests) below.
622618

623619
##### e2e tests
624620

@@ -632,9 +628,21 @@ https://storage.googleapis.com/k8s-triage/index.html
632628
We expect no non-infra related flakes in the last month as a GA graduation criteria.
633629
-->
634630

635-
- When creating a Pod with `SupplementalGroupsPolicy=Strict`, the pods will run with only groups specified by API: <link to test coverage(t.b.d.)>
636-
- When creating a Pod with `SupplementalGroupsPolicy=Merge`, the pods will run with groups specified by API and groups from the image: <link to test coverage(t.b.d.)>
637-
- When creating a Pod and it starts, each `ContainerStatus.User` contain the correct identities of the containers: <link to test coverage(t.b.d.)>
631+
- Kubernetes: <https://github.com/kubernetes/kubernetes/blob/v1.31.0/test/e2e/node/security_context.go>
632+
- When creating a Pod with `SupplementalGroupsPolicy=Strict`
633+
- the containers in the pod will run with only groups specified by the API, and
634+
- once it starts, `ContainerStatus.User` contains the correct identities of the containers
635+
- When creating a Pod with `SupplementalGroupsPolicy=Merge`
636+
- the containers in the pod will run with groups specified by API and groups from the container image, and
637+
- once it starts, `ContainerStatus.User` contains the correct identities of the containers, and
638+
- When creating a Pod without `SupplementalGroupsPolicy` (equivalent behaviour with `Merge`)
639+
- the pod will run with with groups specified by API and groups from the image
640+
- once it starts, `ContainerStatus.User` contains the correct identities of the containers
641+
- _Note: above e2e tests will self-skip if the node does not support `SupplementalGroupsPolicyFeature` detected by `Node.Status.Featuers.SupplementalGroupsPolicy` field._
642+
- critools(critest): <https://github.com/kubernetes-sigs/cri-tools/blob/v1.31.0/pkg/validate/security_context_linux.go>
643+
- Symmetric test cases with Kubernetes e2e tests except for the case of _without `SupplementalGroupsPolicy`_ because `SupplementalGroupsPolicy` always has value(default is `Merge`).
644+
- _Note: above tests will self-skip if the runtime does not support `SupplementalGroupsPolicyFeature` detected by `StatusResponse.features.supplemental_groups_policy` field._
645+
638646

639647
### Graduation Criteria
640648

@@ -762,7 +770,7 @@ You can take a look at one potential example of such test in:
762770
https://github.com/kubernetes/kubernetes/pull/97058/files#diff-7826f7adbc1996a05ab52e3f5f02429e94b68ce6bce0dc534d1be636154fded3R246-R282
763771
-->
764772

765-
Planned for Alpha.
773+
Yes, see [Unit tests](#unit-tests) section.
766774

767775
### Rollout, Upgrade and Rollback Planning
768776

@@ -1047,6 +1055,7 @@ Major milestones might include:
10471055
-->
10481056

10491057
- 2023-02-10: Initial KEP published.
1058+
- v1.31.0(2024-08-13): Alpha
10501059

10511060
## Drawbacks
10521061

0 commit comments

Comments
 (0)