Merge pull request #103179 from tanjing2020/runtimeclass

[e2e] Destroy the created runtimeclass resources at the end of the test case.
This commit is contained in:
Kubernetes Prow Robot 2021-06-29 17:07:15 -07:00 committed by GitHub
commit c9bff73105
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -50,6 +50,7 @@ var _ = SIGDescribe("RuntimeClass", func() {
ginkgo.It("should reject a Pod requesting a RuntimeClass with an unconfigured handler [NodeFeature:RuntimeHandler]", func() { ginkgo.It("should reject a Pod requesting a RuntimeClass with an unconfigured handler [NodeFeature:RuntimeHandler]", func() {
handler := f.Namespace.Name + "-handler" handler := f.Namespace.Name + "-handler"
rcName := createRuntimeClass(f, "unconfigured-handler", handler) rcName := createRuntimeClass(f, "unconfigured-handler", handler)
defer deleteRuntimeClass(f, rcName)
pod := f.PodClient().Create(e2enode.NewRuntimeClassPod(rcName)) pod := f.PodClient().Create(e2enode.NewRuntimeClassPod(rcName))
eventSelector := fields.Set{ eventSelector := fields.Set{
"involvedObject.kind": "Pod", "involvedObject.kind": "Pod",
@ -74,6 +75,7 @@ var _ = SIGDescribe("RuntimeClass", func() {
handler := e2enode.PreconfiguredRuntimeClassHandler(framework.TestContext.ContainerRuntime) handler := e2enode.PreconfiguredRuntimeClassHandler(framework.TestContext.ContainerRuntime)
rcName := createRuntimeClass(f, "preconfigured-handler", handler) rcName := createRuntimeClass(f, "preconfigured-handler", handler)
defer deleteRuntimeClass(f, rcName)
pod := f.PodClient().Create(e2enode.NewRuntimeClassPod(rcName)) pod := f.PodClient().Create(e2enode.NewRuntimeClassPod(rcName))
expectPodSuccess(f, pod) expectPodSuccess(f, pod)
}) })
@ -266,6 +268,11 @@ var _ = SIGDescribe("RuntimeClass", func() {
}) })
}) })
func deleteRuntimeClass(f *framework.Framework, name string) {
err := f.ClientSet.NodeV1().RuntimeClasses().Delete(context.TODO(), name, metav1.DeleteOptions{})
framework.ExpectNoError(err, "failed to delete RuntimeClass resource")
}
// createRuntimeClass generates a RuntimeClass with the desired handler and a "namespaced" name, // createRuntimeClass generates a RuntimeClass with the desired handler and a "namespaced" name,
// synchronously creates it, and returns the generated name. // synchronously creates it, and returns the generated name.
func createRuntimeClass(f *framework.Framework, name, handler string) string { func createRuntimeClass(f *framework.Framework, name, handler string) string {