Skip to content

Commit 03eb136

Browse files
authored
Merge pull request #8334 from killianmuldoon/pr-flaky-clusterresourceset-test
🐛 Fix flaky wait in CRS test
2 parents 54503f5 + e7d0ab8 commit 03eb136

File tree

1 file changed

+12
-20
lines changed

1 file changed

+12
-20
lines changed

exp/addons/internal/controllers/clusterresourceset_controller_test.go

Lines changed: 12 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -916,14 +916,6 @@ metadata:
916916
ns := setup(t, g)
917917
defer teardown(t, g, ns)
918918

919-
kubernetesAPIServerService := &corev1.Service{
920-
TypeMeta: metav1.TypeMeta{Kind: "Service", APIVersion: "v1"},
921-
ObjectMeta: metav1.ObjectMeta{
922-
Name: "kubernetes",
923-
Namespace: metav1.NamespaceDefault,
924-
},
925-
}
926-
927919
fakeService := &corev1.Service{
928920
TypeMeta: metav1.TypeMeta{Kind: "Service", APIVersion: "v1"},
929921
ObjectMeta: metav1.ObjectMeta{
@@ -941,8 +933,9 @@ metadata:
941933
},
942934
}
943935

936+
kubernetesAPIServerService := &corev1.Service{}
944937
t.Log("Verifying Kubernetes API Server Service has been created")
945-
g.Expect(env.Get(ctx, client.ObjectKeyFromObject(kubernetesAPIServerService), kubernetesAPIServerService)).To(Succeed())
938+
g.Expect(env.Get(ctx, client.ObjectKey{Name: "kubernetes", Namespace: metav1.NamespaceDefault}, kubernetesAPIServerService)).To(Succeed())
946939

947940
fakeService.Spec.ClusterIP = kubernetesAPIServerService.Spec.ClusterIP
948941

@@ -958,7 +951,7 @@ metadata:
958951
}
959952
return nil
960953
}, timeout).Should(Succeed())
961-
g.Expect(apierrors.IsNotFound(env.Get(ctx, client.ObjectKeyFromObject(kubernetesAPIServerService), kubernetesAPIServerService))).To(BeTrue())
954+
g.Expect(apierrors.IsNotFound(env.Get(ctx, client.ObjectKeyFromObject(kubernetesAPIServerService), &corev1.Service{}))).To(BeTrue())
962955

963956
clusterResourceSetInstance := &addonsv1.ClusterResourceSet{
964957
ObjectMeta: metav1.ObjectMeta{
@@ -978,28 +971,27 @@ metadata:
978971
g.Expect(env.Update(ctx, testCluster)).To(Succeed())
979972

980973
// ClusterResourceSetBinding for the Cluster is not created because the Kubernetes API Server Service doesn't exist.
981-
clusterResourceSetBindingKey := client.ObjectKey{
982-
Namespace: testCluster.Namespace,
983-
Name: testCluster.Name,
984-
}
974+
clusterResourceSetBindingKey := client.ObjectKey{Namespace: testCluster.Namespace, Name: testCluster.Name}
985975
g.Consistently(func() bool {
986976
binding := &addonsv1.ClusterResourceSetBinding{}
987977

988978
err := env.Get(ctx, clusterResourceSetBindingKey, binding)
989979
return apierrors.IsNotFound(err)
990980
}, timeout).Should(BeTrue())
991981

992-
t.Log("Make sure Kubernetes API Server Service has been created")
982+
t.Log("Create Kubernetes API Server Service")
993983
g.Expect(env.Delete(ctx, fakeService)).Should(Succeed())
994-
g.Eventually(func() bool {
995-
err := env.Get(ctx, client.ObjectKeyFromObject(kubernetesAPIServerService), kubernetesAPIServerService)
996-
return err == nil
997-
}, timeout).Should(BeTrue())
984+
kubernetesAPIServerService.ResourceVersion = ""
985+
g.Expect(env.Create(ctx, kubernetesAPIServerService)).Should(Succeed())
986+
987+
// Label the CRS to trigger reconciliation.
988+
labels["new"] = ""
989+
clusterResourceSetInstance.SetLabels(labels)
990+
g.Expect(env.Patch(ctx, clusterResourceSetInstance, client.MergeFrom(clusterResourceSetInstance.DeepCopy()))).To(Succeed())
998991

999992
// Wait until ClusterResourceSetBinding is created for the Cluster
1000993
g.Eventually(func() bool {
1001994
binding := &addonsv1.ClusterResourceSetBinding{}
1002-
1003995
err := env.Get(ctx, clusterResourceSetBindingKey, binding)
1004996
return err == nil
1005997
}, timeout).Should(BeTrue())

0 commit comments

Comments
 (0)