From 52c8d164fffcd71d8e5f3ce4a4407dc834ea50f0 Mon Sep 17 00:00:00 2001 From: Mike Danese Date: Tue, 9 Jun 2015 09:37:43 -0700 Subject: [PATCH] retry pod delete in etcd failure test --- test/e2e/etcd_failure.go | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/test/e2e/etcd_failure.go b/test/e2e/etcd_failure.go index be123c3605e..9d093146712 100644 --- a/test/e2e/etcd_failure.go +++ b/test/e2e/etcd_failure.go @@ -121,13 +121,18 @@ func checkExistingRCRecovers(f Framework) { rcSelector := labels.Set{"name": "baz"}.AsSelector() By("deleting pods from existing replication controller") - pods, err := podClient.List(rcSelector, fields.Everything()) - Expect(err).NotTo(HaveOccurred()) - Expect(len(pods.Items) > 0).Should(BeTrue()) - for _, pod := range pods.Items { - err = podClient.Delete(pod.Name, api.NewDeleteOptions(0)) + expectNoError(wait.Poll(time.Millisecond*500, time.Second*30, func() (bool, error) { + pods, err := podClient.List(rcSelector, fields.Everything()) Expect(err).NotTo(HaveOccurred()) - } + if len(pods.Items) == 0 { + return false, nil + } + for _, pod := range pods.Items { + err = podClient.Delete(pod.Name, api.NewDeleteOptions(0)) + Expect(err).NotTo(HaveOccurred()) + } + return true, nil + })) By("waiting for replication controller to recover") expectNoError(wait.Poll(time.Millisecond*500, time.Second*30, func() (bool, error) {