Skip to content

Commit d373bef

Browse files
committed
Use polling while deleting the collection of pod templates
1 parent 758e3c7 commit d373bef

File tree

1 file changed

+28
-5
lines changed

1 file changed

+28
-5
lines changed

test/e2e/common/podtemplates.go

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,19 @@ import (
2424
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2525
"k8s.io/apimachinery/pkg/types"
2626
"k8s.io/apimachinery/pkg/util/uuid"
27+
"k8s.io/apimachinery/pkg/util/wait"
2728
"k8s.io/kubernetes/test/e2e/framework"
2829
imageutils "k8s.io/kubernetes/test/utils/image"
30+
"time"
2931

3032
"github.com/onsi/ginkgo"
3133
)
3234

35+
const (
36+
podTemplateRetryPeriod = 1 * time.Second
37+
podTemplateRetryTimeout = 1 * time.Minute
38+
)
39+
3340
var _ = ginkgo.Describe("[sig-node] PodTemplates", func() {
3441
f := framework.NewDefaultFramework("podtemplate")
3542
/*
@@ -134,12 +141,10 @@ var _ = ginkgo.Describe("[sig-node] PodTemplates", func() {
134141
framework.ExpectEqual(len(podTemplateList.Items), len(podTemplateNames), "looking for expected number of pod templates")
135142

136143
ginkgo.By("delete collection of pod templates")
137-
// delete collection
144+
// confirm that delete collection does remove all pod templates
138145

139-
framework.Logf("requesting DeleteCollection of pod templates")
140-
err = f.ClientSet.CoreV1().PodTemplates(f.Namespace.Name).DeleteCollection(context.TODO(), metav1.DeleteOptions{}, metav1.ListOptions{
141-
LabelSelector: "podtemplate-set=true"})
142-
framework.ExpectNoError(err, "failed to delete all pod templates")
146+
err = wait.PollImmediate(podTemplateRetryPeriod, podTemplateRetryTimeout, deletePodTemplateCollection(f, "podtemplate-set=true"))
147+
framework.ExpectNoError(err, "failed to delete collection")
143148

144149
ginkgo.By("get a list of pod templates with a label in the current namespace")
145150
// get list of pod templates
@@ -153,3 +158,21 @@ var _ = ginkgo.Describe("[sig-node] PodTemplates", func() {
153158
})
154159

155160
})
161+
162+
func deletePodTemplateCollection(f *framework.Framework, label string) func() (bool, error) {
163+
return func() (bool, error) {
164+
var err error
165+
166+
framework.Logf("requesting DeleteCollection of pod templates")
167+
168+
err = f.ClientSet.CoreV1().PodTemplates(f.Namespace.Name).DeleteCollection(context.TODO(), metav1.DeleteOptions{}, metav1.ListOptions{
169+
LabelSelector: label})
170+
171+
if err != nil {
172+
return false, err
173+
} else {
174+
return true, nil
175+
}
176+
177+
}
178+
}

0 commit comments

Comments
 (0)