@@ -27,17 +27,17 @@ import (
2727 appsv1 "k8s.io/api/apps/v1"
2828 corev1 "k8s.io/api/core/v1"
2929 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
30+ "k8s.io/utils/ptr"
3031 operatorv1 "sigs.k8s.io/cluster-api-operator/api/v1alpha1"
31- operatorframework "sigs.k8s.io/cluster-api-operator/test/framework"
32+ . "sigs.k8s.io/cluster-api-operator/test/framework"
3233 "sigs.k8s.io/cluster-api/test/framework"
3334 "sigs.k8s.io/controller-runtime/pkg/client"
3435 "sigs.k8s.io/yaml"
3536)
3637
3738var _ = Describe ("Install Core Provider in an air-gapped environment" , func () {
3839 It ("should successfully create config maps with Core Provider manifests" , func () {
39- k8sclient := bootstrapClusterProxy .GetClient ()
40-
40+ bootstrapCluster := bootstrapClusterProxy .GetClient ()
4141 configMaps := []corev1.ConfigMap {}
4242
4343 for _ , fileName := range []string {"core-cluster-api-v1.4.2.yaml" , "core-cluster-api-v1.4.3.yaml" } {
@@ -53,12 +53,12 @@ var _ = Describe("Install Core Provider in an air-gapped environment", func() {
5353
5454 By ("Applying core provider manifests to the cluster" )
5555 for _ , cm := range configMaps {
56- Expect (k8sclient .Create (ctx , & cm )).To (Succeed ())
56+ Expect (bootstrapCluster .Create (ctx , & cm )).To (Succeed ())
5757 }
5858 })
5959
6060 It ("should successfully create a CoreProvider from a config map" , func () {
61- k8sclient := bootstrapClusterProxy .GetClient ()
61+ bootstrapCluster := bootstrapClusterProxy .GetClient ()
6262 coreProvider := & operatorv1.CoreProvider {
6363 ObjectMeta : metav1.ObjectMeta {
6464 Name : coreProviderName ,
@@ -78,7 +78,7 @@ var _ = Describe("Install Core Provider in an air-gapped environment", func() {
7878 },
7979 }
8080
81- Expect (k8sclient .Create (ctx , coreProvider )).To (Succeed ())
81+ Expect (bootstrapCluster .Create (ctx , coreProvider )).To (Succeed ())
8282
8383 By ("Waiting for the core provider deployment to be ready" )
8484 framework .WaitForDeploymentsAvailable (ctx , framework.WaitForDeploymentsAvailableInput {
@@ -87,38 +87,25 @@ var _ = Describe("Install Core Provider in an air-gapped environment", func() {
8787 }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
8888
8989 By ("Waiting for core provider to be ready" )
90- operatorframework .WaitForConditional (ctx , operatorframework.ObjectConditionalInput {
91- Reader : k8sclient ,
92- Object : coreProvider ,
93- Conditional : func () bool {
94- for _ , c := range coreProvider .Status .Conditions {
95- if c .Type == operatorv1 .ProviderInstalledCondition && c .Status == corev1 .ConditionTrue {
96- return true
97- }
98- }
99- return false
100- },
101- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
90+ WaitFor (ctx , For (coreProvider ).In (bootstrapCluster ).ToSatisfy (
91+ HaveStatusCondition (& coreProvider .Status .Conditions , operatorv1 .ProviderInstalledCondition ),
92+ ), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
10293
10394 By ("Waiting for status.IntalledVersion to be set" )
104- operatorframework .WaitForConditional (ctx , operatorframework.ObjectConditionalInput {
105- Reader : k8sclient ,
106- Object : coreProvider ,
107- Conditional : func () bool {
108- return coreProvider .Status .InstalledVersion != nil && * coreProvider .Status .InstalledVersion == coreProvider .Spec .Version
109- },
110- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
95+ WaitFor (ctx , For (coreProvider ).In (bootstrapCluster ).ToSatisfy (func () bool {
96+ return ptr .Equal (coreProvider .Status .InstalledVersion , ptr .To (coreProvider .Spec .Version ))
97+ }), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
11198 })
11299
113100 It ("should successfully downgrade a CoreProvider (latest -> v1.4.2)" , func () {
114- k8sclient := bootstrapClusterProxy .GetClient ()
101+ bootstrapCluster := bootstrapClusterProxy .GetClient ()
115102 coreProvider := & operatorv1.CoreProvider {}
116103 key := client.ObjectKey {Namespace : operatorNamespace , Name : coreProviderName }
117- Expect (k8sclient .Get (ctx , key , coreProvider )).To (Succeed ())
104+ Expect (bootstrapCluster .Get (ctx , key , coreProvider )).To (Succeed ())
118105
119106 coreProvider .Spec .Version = previousCAPIVersion
120107
121- Expect (k8sclient .Update (ctx , coreProvider )).To (Succeed ())
108+ Expect (bootstrapCluster .Update (ctx , coreProvider )).To (Succeed ())
122109
123110 By ("Waiting for the core provider deployment to be ready" )
124111 framework .WaitForDeploymentsAvailable (ctx , framework.WaitForDeploymentsAvailableInput {
@@ -127,41 +114,25 @@ var _ = Describe("Install Core Provider in an air-gapped environment", func() {
127114 }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
128115
129116 By ("Waiting for core provider to be ready" )
130- operatorframework .WaitForConditional (ctx , operatorframework.ObjectConditionalInput {
131- Reader : k8sclient ,
132- Object : coreProvider ,
133- Conditional : func () bool {
134- for _ , c := range coreProvider .Status .Conditions {
135- if c .Type == operatorv1 .ProviderInstalledCondition && c .Status == corev1 .ConditionTrue {
136- return true
137- }
138- }
139- return false
140- },
141- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
117+ WaitFor (ctx , For (coreProvider ).In (bootstrapCluster ).ToSatisfy (
118+ HaveStatusCondition (& coreProvider .Status .Conditions , operatorv1 .ProviderInstalledCondition ),
119+ ), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
142120
143121 By ("Waiting for status.IntalledVersion to be set" )
144- operatorframework .WaitForConditional (ctx , operatorframework.ObjectConditionalInput {
145- Reader : k8sclient ,
146- Object : coreProvider ,
147- Conditional : func () bool {
148- if coreProvider .Status .InstalledVersion != nil && * coreProvider .Status .InstalledVersion == previousCAPIVersion {
149- return true
150- }
151- return false
152- },
153- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
122+ WaitFor (ctx , For (coreProvider ).In (bootstrapCluster ).ToSatisfy (func () bool {
123+ return ptr .Equal (coreProvider .Status .InstalledVersion , ptr .To (previousCAPIVersion ))
124+ }), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
154125 })
155126
156127 It ("should successfully upgrade a CoreProvider (v1.4.2 -> latest)" , func () {
157- k8sclient := bootstrapClusterProxy .GetClient ()
128+ bootstrapCluster := bootstrapClusterProxy .GetClient ()
158129 coreProvider := & operatorv1.CoreProvider {}
159130 key := client.ObjectKey {Namespace : operatorNamespace , Name : coreProviderName }
160- Expect (k8sclient .Get (ctx , key , coreProvider )).To (Succeed ())
131+ Expect (bootstrapCluster .Get (ctx , key , coreProvider )).To (Succeed ())
161132
162133 coreProvider .Spec .Version = ""
163134
164- Expect (k8sclient .Update (ctx , coreProvider )).To (Succeed ())
135+ Expect (bootstrapCluster .Update (ctx , coreProvider )).To (Succeed ())
165136
166137 By ("Waiting for the core provider deployment to be ready" )
167138 framework .WaitForDeploymentsAvailable (ctx , framework.WaitForDeploymentsAvailableInput {
@@ -170,64 +141,39 @@ var _ = Describe("Install Core Provider in an air-gapped environment", func() {
170141 }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
171142
172143 By ("Waiting for core provider to be ready" )
173- operatorframework .WaitForConditional (ctx , operatorframework.ObjectConditionalInput {
174- Reader : k8sclient ,
175- Object : coreProvider ,
176- Conditional : func () bool {
177- for _ , c := range coreProvider .Status .Conditions {
178- if c .Type == operatorv1 .ProviderInstalledCondition && c .Status == corev1 .ConditionTrue {
179- return true
180- }
181- }
182- return false
183- },
184- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
144+ WaitFor (ctx , For (coreProvider ).In (bootstrapCluster ).ToSatisfy (
145+ HaveStatusCondition (& coreProvider .Status .Conditions , operatorv1 .ProviderInstalledCondition ),
146+ ), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
185147
186148 By ("Waiting for status.IntalledVersion to be set" )
187- operatorframework .WaitForConditional (ctx , operatorframework.ObjectConditionalInput {
188- Reader : k8sclient ,
189- Object : coreProvider ,
190- Conditional : func () bool {
191- return coreProvider .Status .InstalledVersion != nil && * coreProvider .Status .InstalledVersion == coreProvider .Spec .Version
192- },
193- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
149+ WaitFor (ctx , For (coreProvider ).In (bootstrapCluster ).ToSatisfy (func () bool {
150+ return ptr .Equal (coreProvider .Status .InstalledVersion , ptr .To (coreProvider .Spec .Version ))
151+ }), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
194152 })
195153
196154 It ("should successfully delete a CoreProvider" , func () {
197- k8sclient := bootstrapClusterProxy .GetClient ()
198- coreProvider := & operatorv1.CoreProvider {
199- ObjectMeta : metav1.ObjectMeta {
200- Name : coreProviderName ,
201- Namespace : operatorNamespace ,
202- },
203- Spec : operatorv1.CoreProviderSpec {
204- ProviderSpec : operatorv1.ProviderSpec {},
205- },
206- }
155+ bootstrapCluster := bootstrapClusterProxy .GetClient ()
156+ coreProvider := & operatorv1.CoreProvider {ObjectMeta : metav1.ObjectMeta {
157+ Name : coreProviderName ,
158+ Namespace : operatorNamespace ,
159+ }}
207160
208- Expect (k8sclient .Delete (ctx , coreProvider )).To (Succeed ())
161+ Expect (bootstrapCluster .Delete (ctx , coreProvider )).To (Succeed ())
209162
210163 By ("Waiting for the core provider deployment to be deleted" )
211- operatorframework .WaitForDelete (ctx , operatorframework.ObjectGetterInput {
212- Reader : k8sclient ,
213- Object : & appsv1.Deployment {
214- ObjectMeta : metav1.ObjectMeta {
215- Name : coreProviderDeploymentName ,
216- Namespace : operatorNamespace ,
217- },
218- },
219- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
164+ WaitForDelete (ctx , For (& appsv1.Deployment {ObjectMeta : metav1.ObjectMeta {
165+ Name : coreProviderDeploymentName ,
166+ Namespace : operatorNamespace ,
167+ }}).In (bootstrapCluster ), e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
220168
221169 By ("Waiting for the core provider object to be deleted" )
222- operatorframework .WaitForDelete (ctx , operatorframework.ObjectGetterInput {
223- Reader : k8sclient ,
224- Object : coreProvider ,
225- }, e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
170+ WaitForDelete (
171+ ctx , For (coreProvider ).In (bootstrapCluster ),
172+ e2eConfig .GetIntervals (bootstrapClusterProxy .GetName (), "wait-controllers" )... )
226173 })
227174
228175 It ("should successfully delete config maps with Core Provider manifests" , func () {
229- k8sclient := bootstrapClusterProxy .GetClient ()
230-
176+ bootstrapCluster := bootstrapClusterProxy .GetClient ()
231177 configMaps := []corev1.ConfigMap {}
232178
233179 for _ , fileName := range []string {"core-cluster-api-v1.4.2.yaml" , "core-cluster-api-v1.4.3.yaml" } {
@@ -243,7 +189,7 @@ var _ = Describe("Install Core Provider in an air-gapped environment", func() {
243189
244190 By ("Deleting config maps with core provider manifests" )
245191 for _ , cm := range configMaps {
246- Expect (k8sclient .Delete (ctx , & cm )).To (Succeed ())
192+ Expect (bootstrapCluster .Delete (ctx , & cm )).To (Succeed ())
247193 }
248194 })
249195})
0 commit comments