Merge pull request #119402 from Tal-or/e2e_podres_terminal_pods

e2e:podresources: verify count for terminal pods
This commit is contained in:
Kubernetes Prow Robot 2023-09-20 11:26:11 -07:00 committed by GitHub
commit 3191493cea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -757,6 +757,27 @@ var _ = SIGDescribe("POD Resources [Serial] [Feature:PodResources][NodeFeature:P
podresourcesGetAllocatableResourcesTests(ctx, cli, nil, onlineCPUs, reservedSystemCPUs)
podresourcesGetTests(ctx, f, cli)
})
ginkgo.It("should account for resources of pods in terminal phase", func(ctx context.Context) {
pd := podDesc{
cntName: "e2e-test-cnt",
podName: "e2e-test-pod",
cpuRequest: 1000,
}
pod := makePodResourcesTestPod(pd)
pod.Spec.Containers[0].Command = []string{"sh", "-c", "/bin/true"}
pod = e2epod.NewPodClient(f).CreateSync(ctx, pod)
defer e2epod.NewPodClient(f).DeleteSync(ctx, pod.Name, metav1.DeleteOptions{}, time.Minute)
err := e2epod.WaitForPodCondition(ctx, f.ClientSet, pod.Namespace, pod.Name, "Pod Succeeded", time.Minute*2, testutils.PodSucceeded)
framework.ExpectNoError(err)
endpoint, err := util.LocalEndpoint(defaultPodResourcesPath, podresources.Socket)
framework.ExpectNoError(err)
cli, conn, err := podresources.GetV1Client(endpoint, defaultPodResourcesTimeout, defaultPodResourcesMaxSize)
framework.ExpectNoError(err)
defer conn.Close()
// although the pod moved into terminal state, PodResourcesAPI still list its cpus
expectPodResources(ctx, 1, cli, []podDesc{pd})
})
})
})