Skip to content

Commit 8036f28

Browse files
Merge pull request #1656 from exdx/fix/delete-grpc-e2e-fix
fix: explicitly delete collection of catalog source pods in grpc e2e test
2 parents f0495d9 + 1542547 commit 8036f28

File tree

1 file changed

+21
-6
lines changed

1 file changed

+21
-6
lines changed

test/e2e/catalog_e2e_test.go

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
corev1 "k8s.io/api/core/v1"
2020
"k8s.io/apiextensions-apiserver/pkg/apis/apiextensions"
2121
apierrors "k8s.io/apimachinery/pkg/api/errors"
22+
k8serrors "k8s.io/apimachinery/pkg/api/errors"
2223
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2324
"k8s.io/apimachinery/pkg/labels"
2425
"k8s.io/apimachinery/pkg/util/wait"
@@ -644,9 +645,6 @@ var _ = Describe("Catalog", func() {
644645
crc := newCRClient()
645646
source, err := crc.OperatorsV1alpha1().CatalogSources(source.GetNamespace()).Create(context.TODO(), source, metav1.CreateOptions{})
646647
require.NoError(GinkgoT(), err)
647-
defer func() {
648-
require.NoError(GinkgoT(), crc.OperatorsV1alpha1().CatalogSources(source.GetNamespace()).Delete(context.TODO(), source.GetName(), metav1.DeleteOptions{}))
649-
}()
650648

651649
// Wait for a new registry pod to be created
652650
c := newKubeClient()
@@ -663,8 +661,7 @@ var _ = Describe("Catalog", func() {
663661

664662
// Create a Subscription for package
665663
subscriptionName := genName("sub-")
666-
cleanupSubscription := createSubscriptionForCatalog(crc, source.GetNamespace(), subscriptionName, source.GetName(), packageName, channelName, "", v1alpha1.ApprovalAutomatic)
667-
defer cleanupSubscription()
664+
_ = createSubscriptionForCatalog(crc, source.GetNamespace(), subscriptionName, source.GetName(), packageName, channelName, "", v1alpha1.ApprovalAutomatic)
668665

669666
// Wait for the Subscription to succeed
670667
subscription, err := fetchSubscription(crc, testNamespace, subscriptionName, subscriptionStateAtLatestChecker)
@@ -676,7 +673,25 @@ var _ = Describe("Catalog", func() {
676673
require.NoError(GinkgoT(), err)
677674

678675
// Delete the registry pod
679-
require.NoError(GinkgoT(), c.KubernetesInterface().CoreV1().Pods(testNamespace).Delete(context.TODO(), name, metav1.DeleteOptions{}))
676+
Eventually(func() error {
677+
backgroundDeletion := metav1.DeletePropagationBackground
678+
err = c.KubernetesInterface().CoreV1().Pods(testNamespace).DeleteCollection(context.TODO(), metav1.DeleteOptions{PropagationPolicy: &backgroundDeletion}, metav1.ListOptions{LabelSelector: selector.String()})
679+
if err != nil {
680+
if k8serrors.IsNotFound(err) {
681+
return nil
682+
}
683+
return err
684+
}
685+
return nil
686+
}).Should(Succeed())
687+
688+
Eventually(func() error {
689+
_, err := c.KubernetesInterface().CoreV1().Pods(testNamespace).Get(context.TODO(), name, metav1.GetOptions{})
690+
if k8serrors.IsNotFound(err) {
691+
return nil
692+
}
693+
return err
694+
}).Should(Succeed())
680695

681696
// Wait for a new registry pod to be created
682697
notUID := func(pods *corev1.PodList) bool {

0 commit comments

Comments
 (0)