Skip to content

Commit 28b7b8f

Browse files
committed
Extract some code to private receivers
1 parent 1fc9fc8 commit 28b7b8f

File tree

1 file changed

+51
-43
lines changed

1 file changed

+51
-43
lines changed

pkg/ingress/model_build_load_balancer.go

Lines changed: 51 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -307,23 +307,7 @@ func (t *defaultModelBuildTask) buildLoadBalancerSecurityGroups(ctx context.Cont
307307
manageBackendSG = *chosenSGSelector.ManagedBackend
308308
}
309309
} else {
310-
frontendSGIDs, err := t.sgResolver.ResolveViaSelector(ctx, chosenSGSelector)
311-
if err != nil {
312-
return nil, err
313-
}
314-
for _, sgID := range frontendSGIDs {
315-
lbSGTokens = append(lbSGTokens, core.LiteralStringToken(sgID))
316-
}
317-
if chosenSGSelector.ManagedBackend != nil && *chosenSGSelector.ManagedBackend {
318-
backendSGID, err := t.backendSGProvider.Get(ctx, networking.ResourceTypeIngress, k8s.ToSliceOfNamespacedNames(t.ingGroup.Members))
319-
if err != nil {
320-
return nil, err
321-
}
322-
t.backendSGIDToken = core.LiteralStringToken(backendSGID)
323-
t.backendSGAllocated = true
324-
lbSGTokens = append(lbSGTokens, t.backendSGIDToken)
325-
}
326-
return lbSGTokens, nil
310+
return t.buildSecurityGroupsFromSelector(ctx, chosenSGSelector, lbSGTokens)
327311
}
328312
}
329313

@@ -336,32 +320,7 @@ func (t *defaultModelBuildTask) buildLoadBalancerSecurityGroups(ctx context.Cont
336320
}
337321

338322
if len(sgNameOrIDsViaAnnotation) > 0 {
339-
manageBackendSGRules, err := t.buildManageSecurityGroupRulesFlag(ctx)
340-
if err != nil {
341-
return nil, err
342-
}
343-
frontendSGIDs, err := t.sgResolver.ResolveViaNameOrID(ctx, sgNameOrIDsViaAnnotation)
344-
if err != nil {
345-
return nil, err
346-
}
347-
for _, sgID := range frontendSGIDs {
348-
lbSGTokens = append(lbSGTokens, core.LiteralStringToken(sgID))
349-
}
350-
351-
if manageBackendSGRules {
352-
if !t.enableBackendSG {
353-
return nil, errors.New("backendSG feature is required to manage worker node SG rules when frontendSG manually specified")
354-
}
355-
backendSGID, err := t.backendSGProvider.Get(ctx, networking.ResourceTypeIngress, k8s.ToSliceOfNamespacedNames(t.ingGroup.Members))
356-
if err != nil {
357-
return nil, err
358-
}
359-
t.backendSGIDToken = core.LiteralStringToken(backendSGID)
360-
t.backendSGAllocated = true
361-
lbSGTokens = append(lbSGTokens, t.backendSGIDToken)
362-
}
363-
t.logger.Info("SG configured via annotation", "LB SGs", lbSGTokens, "backend SG", t.backendSGIDToken)
364-
return lbSGTokens, nil
323+
return t.buildSecurityGroupsFromAnnotation(ctx, sgNameOrIDsViaAnnotation, lbSGTokens)
365324
}
366325
}
367326

@@ -385,6 +344,55 @@ func (t *defaultModelBuildTask) buildLoadBalancerSecurityGroups(ctx context.Cont
385344
return lbSGTokens, nil
386345
}
387346

347+
func (t *defaultModelBuildTask) buildSecurityGroupsFromAnnotation(ctx context.Context, sgNameOrIDsViaAnnotation []string, lbSGTokens []core.StringToken) ([]core.StringToken, error) {
348+
manageBackendSGRules, err := t.buildManageSecurityGroupRulesFlag(ctx)
349+
if err != nil {
350+
return nil, err
351+
}
352+
frontendSGIDs, err := t.sgResolver.ResolveViaNameOrID(ctx, sgNameOrIDsViaAnnotation)
353+
if err != nil {
354+
return nil, err
355+
}
356+
for _, sgID := range frontendSGIDs {
357+
lbSGTokens = append(lbSGTokens, core.LiteralStringToken(sgID))
358+
}
359+
360+
if manageBackendSGRules {
361+
if !t.enableBackendSG {
362+
return nil, errors.New("backendSG feature is required to manage worker node SG rules when frontendSG manually specified")
363+
}
364+
backendSGID, err := t.backendSGProvider.Get(ctx, networking.ResourceTypeIngress, k8s.ToSliceOfNamespacedNames(t.ingGroup.Members))
365+
if err != nil {
366+
return nil, err
367+
}
368+
t.backendSGIDToken = core.LiteralStringToken(backendSGID)
369+
t.backendSGAllocated = true
370+
lbSGTokens = append(lbSGTokens, t.backendSGIDToken)
371+
}
372+
t.logger.Info("SG configured via annotation", "LB SGs", lbSGTokens, "backend SG", t.backendSGIDToken)
373+
return lbSGTokens, nil
374+
}
375+
376+
func (t *defaultModelBuildTask) buildSecurityGroupsFromSelector(ctx context.Context, chosenSGSelector *v1beta1.SecurityGroupSelector, lbSGTokens []core.StringToken) ([]core.StringToken, error) {
377+
frontendSGIDs, err := t.sgResolver.ResolveViaSelector(ctx, chosenSGSelector)
378+
if err != nil {
379+
return nil, err
380+
}
381+
for _, sgID := range frontendSGIDs {
382+
lbSGTokens = append(lbSGTokens, core.LiteralStringToken(sgID))
383+
}
384+
if chosenSGSelector.ManagedBackend != nil && *chosenSGSelector.ManagedBackend {
385+
backendSGID, err := t.backendSGProvider.Get(ctx, networking.ResourceTypeIngress, k8s.ToSliceOfNamespacedNames(t.ingGroup.Members))
386+
if err != nil {
387+
return nil, err
388+
}
389+
t.backendSGIDToken = core.LiteralStringToken(backendSGID)
390+
t.backendSGAllocated = true
391+
lbSGTokens = append(lbSGTokens, t.backendSGIDToken)
392+
}
393+
return lbSGTokens, nil
394+
}
395+
388396
func (t *defaultModelBuildTask) buildLoadBalancerCOIPv4Pool(_ context.Context) (*string, error) {
389397
explicitCOIPv4Pools := sets.NewString()
390398
for _, member := range t.ingGroup.Members {

0 commit comments

Comments
 (0)