@@ -234,6 +234,67 @@ func TestOpenStackCluster_ValidateUpdate(t *testing.T) {
234
234
},
235
235
wantErr : false ,
236
236
},
237
+ {
238
+ name : "Changing OpenStackCluster.Spec.APIServerFixedIP is allowed when API Server Floating IP is disabled" ,
239
+ oldTemplate : & OpenStackCluster {
240
+ Spec : OpenStackClusterSpec {
241
+ DisableAPIServerFloatingIP : true ,
242
+ },
243
+ },
244
+ newTemplate : & OpenStackCluster {
245
+ Spec : OpenStackClusterSpec {
246
+ DisableAPIServerFloatingIP : true ,
247
+ APIServerFixedIP : "20.1.56.1" ,
248
+ },
249
+ },
250
+ wantErr : false ,
251
+ },
252
+ {
253
+ name : "Changing OpenStackCluster.Spec.APIServerFixedIP is not allowed" ,
254
+ oldTemplate : & OpenStackCluster {
255
+ Spec : OpenStackClusterSpec {
256
+ DisableAPIServerFloatingIP : false ,
257
+ },
258
+ },
259
+ newTemplate : & OpenStackCluster {
260
+ Spec : OpenStackClusterSpec {
261
+ DisableAPIServerFloatingIP : false ,
262
+ APIServerFixedIP : "20.1.56.1" ,
263
+ },
264
+ },
265
+ wantErr : true ,
266
+ },
267
+
268
+ {
269
+ name : "Changing OpenStackCluster.Spec.APIServerPort is allowed when API Server Floating IP is disabled" ,
270
+ oldTemplate : & OpenStackCluster {
271
+ Spec : OpenStackClusterSpec {
272
+ DisableAPIServerFloatingIP : true ,
273
+ },
274
+ },
275
+ newTemplate : & OpenStackCluster {
276
+ Spec : OpenStackClusterSpec {
277
+ DisableAPIServerFloatingIP : true ,
278
+ APIServerPort : 8443 ,
279
+ },
280
+ },
281
+ wantErr : false ,
282
+ },
283
+ {
284
+ name : "Changing OpenStackCluster.Spec.APIServerPort is not allowed" ,
285
+ oldTemplate : & OpenStackCluster {
286
+ Spec : OpenStackClusterSpec {
287
+ DisableAPIServerFloatingIP : false ,
288
+ },
289
+ },
290
+ newTemplate : & OpenStackCluster {
291
+ Spec : OpenStackClusterSpec {
292
+ DisableAPIServerFloatingIP : false ,
293
+ APIServerPort : 8443 ,
294
+ },
295
+ },
296
+ wantErr : true ,
297
+ },
237
298
}
238
299
for _ , tt := range tests {
239
300
t .Run (tt .name , func (t * testing.T ) {
0 commit comments