@@ -261,7 +261,7 @@ func (mw *azureManagedControlPlaneWebhook) ValidateUpdate(ctx context.Context, o
261
261
allErrs = append (allErrs , errs ... )
262
262
}
263
263
264
- if errs := m .validateFleetsMember (old ); len (errs ) > 0 {
264
+ if errs := m .validateFleetsMemberUpdate (old ); len (errs ) > 0 {
265
265
allErrs = append (allErrs , errs ... )
266
266
}
267
267
@@ -316,6 +316,8 @@ func (m *AzureManagedControlPlane) Validate(cli client.Client) error {
316
316
317
317
allErrs = append (allErrs , validateAMCPVirtualNetwork (m .Spec .VirtualNetwork , field .NewPath ("spec" ).Child ("VirtualNetwork" ))... )
318
318
319
+ allErrs = append (allErrs , validateFleetsMember (m .Spec .FleetsMember , field .NewPath ("spec" ).Child ("FleetsMember" ))... )
320
+
319
321
return allErrs .ToAggregate ()
320
322
}
321
323
@@ -431,6 +433,25 @@ func validateAMCPVirtualNetwork(virtualNetwork ManagedControlPlaneVirtualNetwork
431
433
return allErrs
432
434
}
433
435
436
+ func validateFleetsMember (fleetsMember * FleetsMember , fldPath * field.Path ) field.ErrorList {
437
+ var allErrs field.ErrorList
438
+
439
+ if fleetsMember != nil && fleetsMember .Name != "" {
440
+ match , _ := regexp .MatchString (`^[a-z0-9]([-a-z0-9]*[a-z0-9])?$` , fleetsMember .Name )
441
+ if ! match {
442
+ allErrs = append (allErrs ,
443
+ field .Invalid (
444
+ fldPath .Child ("Name" ),
445
+ fleetsMember .Name ,
446
+ "Name must match ^[a-z0-9]([-a-z0-9]*[a-z0-9])?$" ,
447
+ ),
448
+ )
449
+ }
450
+ }
451
+
452
+ return allErrs
453
+ }
454
+
434
455
// validateAPIServerAccessProfile validates an APIServerAccessProfile.
435
456
func (m * AzureManagedControlPlane ) validateAPIServerAccessProfile (_ client.Client ) field.ErrorList {
436
457
if m .Spec .APIServerAccessProfile != nil {
@@ -714,8 +735,8 @@ func (m *AzureManagedControlPlane) validateOIDCIssuerProfileUpdate(old *AzureMan
714
735
return allErrs
715
736
}
716
737
717
- // validateFleetsMember validates a FleetsMember.
718
- func (m * AzureManagedControlPlane ) validateFleetsMember (old * AzureManagedControlPlane ) field.ErrorList {
738
+ // validateFleetsMemberUpdate validates a FleetsMember.
739
+ func (m * AzureManagedControlPlane ) validateFleetsMemberUpdate (old * AzureManagedControlPlane ) field.ErrorList {
719
740
var allErrs field.ErrorList
720
741
721
742
if old .Spec .FleetsMember == nil || m .Spec .FleetsMember == nil {
0 commit comments