@@ -80,7 +80,7 @@ func (s *Service) Reconcile(ctx context.Context) error {
80
80
return fmt .Errorf ("failed to ensure control-plane lbs: %w" , err )
81
81
}
82
82
83
- if err := s .ensureControlPlaneLBsACL (ctx , lbs , instanceIPsToStrings (server .PublicIPs )); err != nil {
83
+ if err := s .ensureControlPlaneLBsACL (ctx , lbs , instanceIPsToStrings (server .PublicIPs ), false ); err != nil {
84
84
return fmt .Errorf ("failed to ensure control-plane lbs acls: %w" , err )
85
85
}
86
86
@@ -127,7 +127,7 @@ func (s *Service) Delete(ctx context.Context) error {
127
127
return err
128
128
}
129
129
130
- if err := s .ensureControlPlaneLBsACL (ctx , lbs , nil ); err != nil && ! client .IsNotFoundError (err ) {
130
+ if err := s .ensureControlPlaneLBsACL (ctx , lbs , nil , true ); err != nil && ! client .IsNotFoundError (err ) {
131
131
return fmt .Errorf ("failed to ensure control-plane lbs acls: %w" , err )
132
132
}
133
133
@@ -413,7 +413,7 @@ func (s *Service) ensureControlPlaneLBs(ctx context.Context, lbs []*lb.LB, nodeI
413
413
continue
414
414
}
415
415
416
- backend , err := s .ScalewayClient .FindBackend (ctx , loadbalancer .Zone , loadbalancer .ID , s . Cluster . ResourceName () )
416
+ backend , err := s .ScalewayClient .FindBackend (ctx , loadbalancer .Zone , loadbalancer .ID , servicelb . BackendName )
417
417
if err != nil {
418
418
return err
419
419
}
@@ -433,14 +433,19 @@ func (s *Service) ensureControlPlaneLBs(ctx context.Context, lbs []*lb.LB, nodeI
433
433
return nil
434
434
}
435
435
436
- func (s * Service ) ensureControlPlaneLBsACL (ctx context.Context , lbs []* lb.LB , publicIPs []string ) error {
436
+ func (s * Service ) ensureControlPlaneLBsACL (ctx context.Context , lbs []* lb.LB , publicIPs []string , delete bool ) error {
437
437
for _ , loadbalancer := range lbs {
438
438
if loadbalancer .Status == lb .LBStatusDeleting {
439
439
continue
440
440
}
441
441
442
- frontend , err := s .ScalewayClient .FindFrontend (ctx , loadbalancer .Zone , loadbalancer .ID , s . Cluster . ResourceName () )
442
+ frontend , err := s .ScalewayClient .FindFrontend (ctx , loadbalancer .Zone , loadbalancer .ID , servicelb . FrontendName )
443
443
if err != nil {
444
+ // If the frontend is not found, we can skip it when reconciling a deletion.
445
+ if delete && client .IsNotFoundError (err ) {
446
+ continue
447
+ }
448
+
444
449
return err
445
450
}
446
451
0 commit comments