File tree Expand file tree Collapse file tree 2 files changed +14
-0
lines changed Expand file tree Collapse file tree 2 files changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -72,6 +72,7 @@ func runHCPBackupAndRestore(
72
72
hcKubeconfig , err := h .GetHostedClusterKubeconfig (h .HostedCluster )
73
73
gomega .Expect (err ).ToNot (gomega .HaveOccurred ())
74
74
crClientForHC , err := client .New (hcKubeconfig , client.Options {Scheme : lib .Scheme })
75
+ gomega .Eventually (h .ValidateClient (crClientForHC ), 5 * time .Minute , 2 * time .Second ).Should (gomega .BeTrue ())
75
76
gomega .Expect (err ).ToNot (gomega .HaveOccurred ())
76
77
err = brCase .PreBackupVerifyGuest (crClientForHC , "" /*unused*/ )
77
78
gomega .Expect (err ).ToNot (gomega .HaveOccurred (), "failed to run pre-backup verification for guest cluster: %v" , err )
@@ -110,6 +111,7 @@ func runHCPBackupAndRestore(
110
111
gomega .Expect (err ).ToNot (gomega .HaveOccurred ())
111
112
crClientForHC , err := client .New (hcKubeconfig , client.Options {Scheme : lib .Scheme })
112
113
gomega .Expect (err ).ToNot (gomega .HaveOccurred ())
114
+ gomega .Eventually (h .ValidateClient (crClientForHC ), 5 * time .Minute , 2 * time .Second ).Should (gomega .BeTrue ())
113
115
err = brCase .PostRestoreVerifyGuest (crClientForHC , "" /*unused*/ )
114
116
gomega .Expect (err ).ToNot (gomega .HaveOccurred (), "failed to run post-restore verification for guest cluster: %v" , err )
115
117
}
Original file line number Diff line number Diff line change 7
7
"log"
8
8
"time"
9
9
10
+ configv1 "github.com/openshift/api/config/v1"
10
11
hypershiftv1 "github.com/openshift/hypershift/api/hypershift/v1beta1"
11
12
appsv1 "k8s.io/api/apps/v1"
12
13
corev1 "k8s.io/api/core/v1"
@@ -713,3 +714,14 @@ func (h *HCHandler) GetHostedClusterKubeconfig(hc *hypershiftv1.HostedCluster) (
713
714
kubeconfigData := kubeconfigSecret .Data ["kubeconfig" ]
714
715
return buildConfigFromBytes (kubeconfigData )
715
716
}
717
+
718
+ func (h * HCHandler ) ValidateClient (c client.Client ) wait.ConditionFunc {
719
+ return func () (bool , error ) {
720
+ clusterVersion := & configv1.ClusterVersion {}
721
+ if err := c .Get (h .Ctx , client.ObjectKey {Name : "version" }, clusterVersion ); err != nil {
722
+ log .Printf ("Error getting cluster version: %v" , err )
723
+ return false , nil
724
+ }
725
+ return true , nil
726
+ }
727
+ }
You can’t perform that action at this time.
0 commit comments