mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 11:21:47 +00:00
Merge pull request #66921 from mgdevstack/NodeConformance-InitContainer
Automatic merge from submit-queue (batch tested with PRs 58058, 67033, 66921, 66956). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Promoting InitContainer [NodeConformance] e2e tests for Conformance **What this PR does / why we need it**: 1. Promotes mentioned 4 InitContainer [NodeConformance] tests for Conformance 2. Validates different PodPhases effectively 3. Improves API coverage mentioned in #66124 . E2E tests - 1. InitContainer [NodeConformance] should invoke init containers on a RestartNever pod 2. InitContainer [NodeConformance] should invoke init containers on a RestartAlways pod 3. InitContainer [NodeConformance] should not start app containers if init containers fail on a RestartAlways pod 4. InitContainer [NodeConformance] should not start app containers and fail the pod if init containers fail on a RestartNever pod **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes #66124 **Special notes for your reviewer**: **Release note**: ```release-note NONE ``` /area conformance @kubernetes/sig-node-pr-reviews
This commit is contained in:
commit
1b033f64a1
4
test/conformance/testdata/conformance.txt
vendored
4
test/conformance/testdata/conformance.txt
vendored
@ -82,6 +82,10 @@ test/e2e/common/expansion.go: "should allow composing env vars into new env vars
|
||||
test/e2e/common/expansion.go: "should allow substituting values in a container's command"
|
||||
test/e2e/common/expansion.go: "should allow substituting values in a container's args"
|
||||
test/e2e/common/host_path.go: "should give a volume the correct mode"
|
||||
test/e2e/common/init_container.go: "should invoke init containers on a RestartNever pod"
|
||||
test/e2e/common/init_container.go: "should invoke init containers on a RestartAlways pod"
|
||||
test/e2e/common/init_container.go: "should not start app containers if init containers fail on a RestartAlways pod"
|
||||
test/e2e/common/init_container.go: "should not start app containers and fail the pod if init containers fail on a RestartNever pod"
|
||||
test/e2e/common/kubelet_etc_hosts.go: "should test kubelet managed /etc/hosts file"
|
||||
test/e2e/common/networking.go: "should function for intra-pod communication: http"
|
||||
test/e2e/common/networking.go: "should function for intra-pod communication: udp"
|
||||
|
@ -42,7 +42,15 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
||||
podClient = f.PodClient()
|
||||
})
|
||||
|
||||
It("should invoke init containers on a RestartNever pod", func() {
|
||||
/*
|
||||
Release: v1.12
|
||||
Testname: init-container-starts-app-restartnever-pod
|
||||
Description: Ensure that all InitContainers are started
|
||||
and all containers in pod are voluntarily terminated with exit status 0,
|
||||
and the system is not going to restart any of these containers
|
||||
when Pod has restart policy as RestartNever.
|
||||
*/
|
||||
framework.ConformanceIt("should invoke init containers on a RestartNever pod", func() {
|
||||
By("creating the pod")
|
||||
name := "pod-init-" + string(uuid.NewUUID())
|
||||
value := strconv.Itoa(time.Now().Nanosecond())
|
||||
@ -99,7 +107,15 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
||||
}
|
||||
})
|
||||
|
||||
It("should invoke init containers on a RestartAlways pod", func() {
|
||||
/*
|
||||
Release: v1.12
|
||||
Testname: init-container-starts-app-restartalways-pod
|
||||
Description: Ensure that all InitContainers are started
|
||||
and all containers in pod started
|
||||
and at least one container is still running or is in the process of being restarted
|
||||
when Pod has restart policy as RestartAlways.
|
||||
*/
|
||||
framework.ConformanceIt("should invoke init containers on a RestartAlways pod", func() {
|
||||
By("creating the pod")
|
||||
name := "pod-init-" + string(uuid.NewUUID())
|
||||
value := strconv.Itoa(time.Now().Nanosecond())
|
||||
@ -160,7 +176,15 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
||||
}
|
||||
})
|
||||
|
||||
It("should not start app containers if init containers fail on a RestartAlways pod", func() {
|
||||
/*
|
||||
Release: v1.12
|
||||
Testname: init-container-fails-stops-app-restartalways-pod
|
||||
Description: Ensure that app container is not started
|
||||
when all InitContainers failed to start
|
||||
and Pod has restarted for few occurrences
|
||||
and pod has restart policy as RestartAlways.
|
||||
*/
|
||||
framework.ConformanceIt("should not start app containers if init containers fail on a RestartAlways pod", func() {
|
||||
By("creating the pod")
|
||||
name := "pod-init-" + string(uuid.NewUUID())
|
||||
value := strconv.Itoa(time.Now().Nanosecond())
|
||||
@ -268,7 +292,13 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
||||
Expect(len(endPod.Status.InitContainerStatuses)).To(Equal(2))
|
||||
})
|
||||
|
||||
It("should not start app containers and fail the pod if init containers fail on a RestartNever pod", func() {
|
||||
/*
|
||||
Release: v1.12
|
||||
Testname: init-container-fails-stops-app-restartnever-pod
|
||||
Description: Ensure that app container is not started
|
||||
when atleast one InitContainer fails to start and Pod has restart policy as RestartNever.
|
||||
*/
|
||||
framework.ConformanceIt("should not start app containers and fail the pod if init containers fail on a RestartNever pod", func() {
|
||||
By("creating the pod")
|
||||
name := "pod-init-" + string(uuid.NewUUID())
|
||||
value := strconv.Itoa(time.Now().Nanosecond())
|
||||
|
Loading…
Reference in New Issue
Block a user