Skip to content

Commit 2b8d4f5

Browse files
zac-nixonniclask25
authored and
niclask25
committed
sg logic and refactoring
1 parent d94d4c4 commit 2b8d4f5

20 files changed

+143
-78
lines changed

controllers/gateway/gateway_controller.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727
elbv2model "sigs.k8s.io/aws-load-balancer-controller/pkg/model/elbv2"
2828
"sigs.k8s.io/aws-load-balancer-controller/pkg/networking"
2929
"sigs.k8s.io/aws-load-balancer-controller/pkg/runtime"
30+
"sigs.k8s.io/aws-load-balancer-controller/pkg/shared_constants"
3031
ctrl "sigs.k8s.io/controller-runtime"
3132
"sigs.k8s.io/controller-runtime/pkg/client"
3233
"sigs.k8s.io/controller-runtime/pkg/controller"
@@ -47,12 +48,12 @@ var _ Reconciler = &gatewayReconciler{}
4748

4849
// NewNLBGatewayReconciler constructs a gateway reconciler to handle specifically for NLB gateways
4950
func NewNLBGatewayReconciler(routeLoader routeutils.Loader, cloud services.Cloud, k8sClient client.Client, eventRecorder record.EventRecorder, controllerConfig config.ControllerConfig, finalizerManager k8s.FinalizerManager, networkingSGReconciler networking.SecurityGroupReconciler, networkingSGManager networking.SecurityGroupManager, elbv2TaggingManager elbv2deploy.TaggingManager, subnetResolver networking.SubnetsResolver, vpcInfoProvider networking.VPCInfoProvider, backendSGProvider networking.BackendSGProvider, sgResolver networking.SecurityGroupResolver, logger logr.Logger, metricsCollector lbcmetrics.MetricCollector, reconcileCounters *metricsutil.ReconcileCounters) Reconciler {
50-
return newGatewayReconciler(constants.NLBGatewayController, elbv2model.LoadBalancerTypeNetwork, controllerConfig.NLBGatewayMaxConcurrentReconciles, constants.NLBGatewayTagPrefix, constants.NLBGatewayFinalizer, routeLoader, routeutils.L4RouteFilter, cloud, k8sClient, eventRecorder, controllerConfig, finalizerManager, networkingSGReconciler, networkingSGManager, elbv2TaggingManager, subnetResolver, vpcInfoProvider, backendSGProvider, sgResolver, logger, metricsCollector, reconcileCounters.IncrementNLBGateway)
51+
return newGatewayReconciler(constants.NLBGatewayController, elbv2model.LoadBalancerTypeNetwork, controllerConfig.NLBGatewayMaxConcurrentReconciles, constants.NLBGatewayTagPrefix, shared_constants.NLBGatewayFinalizer, routeLoader, routeutils.L4RouteFilter, cloud, k8sClient, eventRecorder, controllerConfig, finalizerManager, networkingSGReconciler, networkingSGManager, elbv2TaggingManager, subnetResolver, vpcInfoProvider, backendSGProvider, sgResolver, logger, metricsCollector, reconcileCounters.IncrementNLBGateway)
5152
}
5253

5354
// NewALBGatewayReconciler constructs a gateway reconciler to handle specifically for ALB gateways
5455
func NewALBGatewayReconciler(routeLoader routeutils.Loader, cloud services.Cloud, k8sClient client.Client, eventRecorder record.EventRecorder, controllerConfig config.ControllerConfig, finalizerManager k8s.FinalizerManager, networkingSGReconciler networking.SecurityGroupReconciler, networkingSGManager networking.SecurityGroupManager, elbv2TaggingManager elbv2deploy.TaggingManager, subnetResolver networking.SubnetsResolver, vpcInfoProvider networking.VPCInfoProvider, backendSGProvider networking.BackendSGProvider, sgResolver networking.SecurityGroupResolver, logger logr.Logger, metricsCollector lbcmetrics.MetricCollector, reconcileCounters *metricsutil.ReconcileCounters) Reconciler {
55-
return newGatewayReconciler(constants.ALBGatewayController, elbv2model.LoadBalancerTypeApplication, controllerConfig.ALBGatewayMaxConcurrentReconciles, constants.ALBGatewayTagPrefix, constants.ALBGatewayFinalizer, routeLoader, routeutils.L7RouteFilter, cloud, k8sClient, eventRecorder, controllerConfig, finalizerManager, networkingSGReconciler, networkingSGManager, elbv2TaggingManager, subnetResolver, vpcInfoProvider, backendSGProvider, sgResolver, logger, metricsCollector, reconcileCounters.IncrementALBGateway)
56+
return newGatewayReconciler(constants.ALBGatewayController, elbv2model.LoadBalancerTypeApplication, controllerConfig.ALBGatewayMaxConcurrentReconciles, constants.ALBGatewayTagPrefix, shared_constants.ALBGatewayFinalizer, routeLoader, routeutils.L7RouteFilter, cloud, k8sClient, eventRecorder, controllerConfig, finalizerManager, networkingSGReconciler, networkingSGManager, elbv2TaggingManager, subnetResolver, vpcInfoProvider, backendSGProvider, sgResolver, logger, metricsCollector, reconcileCounters.IncrementALBGateway)
5657
}
5758

5859
// newGatewayReconciler constructs a reconciler that responds to gateway object changes

controllers/service/service_controller.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package service
33
import (
44
"context"
55
"fmt"
6+
"sigs.k8s.io/aws-load-balancer-controller/pkg/shared_constants"
67

78
"sigs.k8s.io/controller-runtime/pkg/reconcile"
89

@@ -33,7 +34,6 @@ import (
3334
)
3435

3536
const (
36-
serviceFinalizer = "service.k8s.aws/resources"
3737
serviceTagPrefix = "service.k8s.aws"
3838
serviceAnnotationPrefix = "service.beta.kubernetes.io"
3939
controllerName = "service"
@@ -47,7 +47,7 @@ func NewServiceReconciler(cloud services.Cloud, k8sClient client.Client, eventRe
4747

4848
annotationParser := annotations.NewSuffixAnnotationParser(serviceAnnotationPrefix)
4949
trackingProvider := tracking.NewDefaultProvider(serviceTagPrefix, controllerConfig.ClusterName)
50-
serviceUtils := service.NewServiceUtils(annotationParser, serviceFinalizer, controllerConfig.ServiceConfig.LoadBalancerClass, controllerConfig.FeatureGates)
50+
serviceUtils := service.NewServiceUtils(annotationParser, shared_constants.ServiceFinalizer, controllerConfig.ServiceConfig.LoadBalancerClass, controllerConfig.FeatureGates)
5151
modelBuilder := service.NewDefaultModelBuilder(annotationParser, subnetsResolver, vpcInfoProvider, cloud.VpcID(), trackingProvider,
5252
elbv2TaggingManager, cloud.EC2(), controllerConfig.FeatureGates, controllerConfig.ClusterName, controllerConfig.DefaultTags, controllerConfig.ExternalManagedTags,
5353
controllerConfig.DefaultSSLPolicy, controllerConfig.DefaultTargetType, controllerConfig.DefaultLoadBalancerScheme, controllerConfig.FeatureGates.Enabled(config.EnableIPTargetType), serviceUtils,
@@ -170,7 +170,7 @@ func (r *serviceReconciler) reconcileLoadBalancerResources(ctx context.Context,
170170

171171
var err error
172172
addFinalizersFn := func() {
173-
err = r.finalizerManager.AddFinalizers(ctx, svc, serviceFinalizer)
173+
err = r.finalizerManager.AddFinalizers(ctx, svc, shared_constants.ServiceFinalizer)
174174
}
175175
r.metricsCollector.ObserveControllerReconcileLatency(controllerName, "add_finalizers", addFinalizersFn)
176176
if err != nil {
@@ -214,7 +214,7 @@ func (r *serviceReconciler) reconcileLoadBalancerResources(ctx context.Context,
214214
}
215215

216216
func (r *serviceReconciler) cleanupLoadBalancerResources(ctx context.Context, svc *corev1.Service, stack core.Stack) error {
217-
if k8s.HasFinalizer(svc, serviceFinalizer) {
217+
if k8s.HasFinalizer(svc, shared_constants.ServiceFinalizer) {
218218
err := r.deployModel(ctx, svc, stack)
219219
if err != nil {
220220
return err
@@ -226,7 +226,7 @@ func (r *serviceReconciler) cleanupLoadBalancerResources(ctx context.Context, sv
226226
r.eventRecorder.Event(svc, corev1.EventTypeWarning, k8s.ServiceEventReasonFailedCleanupStatus, fmt.Sprintf("Failed update status due to %v", err))
227227
return err
228228
}
229-
if err := r.finalizerManager.RemoveFinalizers(ctx, svc, serviceFinalizer); err != nil {
229+
if err := r.finalizerManager.RemoveFinalizers(ctx, svc, shared_constants.ServiceFinalizer); err != nil {
230230
r.eventRecorder.Event(svc, corev1.EventTypeWarning, k8s.ServiceEventReasonFailedRemoveFinalizer, fmt.Sprintf("Failed remove finalizer due to %v", err))
231231
return err
232232
}

main.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,8 @@ func main() {
148148
os.Exit(1)
149149
}
150150

151+
nlbGatewayEnabled := controllerCFG.FeatureGates.Enabled(config.NLBGatewayAPI)
152+
albGatewayEnabled := controllerCFG.FeatureGates.Enabled(config.ALBGatewayAPI)
151153
podInfoRepo := k8s.NewDefaultPodInfoRepo(clientSet.CoreV1().RESTClient(), controllerCFG.RuntimeConfig.WatchNamespace, ctrl.Log)
152154
finalizerManager := k8s.NewDefaultFinalizerManager(mgr.GetClient(), ctrl.Log)
153155
sgManager := networking.NewDefaultSecurityGroupManager(cloud.EC2(), ctrl.Log)
@@ -165,7 +167,7 @@ func main() {
165167
cloud.VpcID(), controllerCFG.ClusterName, controllerCFG.FeatureGates.Enabled(config.EndpointsFailOpen), controllerCFG.EnableEndpointSlices, controllerCFG.DisableRestrictedSGRules,
166168
controllerCFG.ServiceTargetENISGTags, mgr.GetEventRecorderFor("targetGroupBinding"), ctrl.Log)
167169
backendSGProvider := networking.NewBackendSGProvider(controllerCFG.ClusterName, controllerCFG.BackendSecurityGroup,
168-
cloud.VpcID(), cloud.EC2(), mgr.GetClient(), controllerCFG.DefaultTags, ctrl.Log.WithName("backend-sg-provider"))
170+
cloud.VpcID(), cloud.EC2(), mgr.GetClient(), controllerCFG.DefaultTags, nlbGatewayEnabled, albGatewayEnabled, ctrl.Log.WithName("backend-sg-provider"))
169171
sgResolver := networking.NewDefaultSecurityGroupResolver(cloud.EC2(), cloud.VpcID())
170172
elbv2TaggingManager := elbv2deploy.NewDefaultTaggingManager(cloud.ELBV2(), cloud.VpcID(), controllerCFG.FeatureGates, cloud.RGT(), ctrl.Log)
171173
ingGroupReconciler := ingress.NewGroupReconciler(cloud, mgr.GetClient(), mgr.GetEventRecorderFor("ingress"),
@@ -221,7 +223,7 @@ func main() {
221223
}
222224

223225
// Setup NLB Gateway controller if enabled
224-
if controllerCFG.FeatureGates.Enabled(config.NLBGatewayAPI) {
226+
if nlbGatewayEnabled {
225227
gwControllerConfig.routeLoader = routeutils.NewLoader(mgr.GetClient())
226228
if err := setupGatewayController(ctx, mgr, gwControllerConfig, constants.NLBGatewayController); err != nil {
227229
setupLog.Error(err, "failed to setup NLB Gateway controller")
@@ -230,7 +232,7 @@ func main() {
230232
}
231233

232234
// Setup ALB Gateway controller if enabled
233-
if controllerCFG.FeatureGates.Enabled(config.ALBGatewayAPI) {
235+
if albGatewayEnabled {
234236
if gwControllerConfig.routeLoader == nil {
235237
gwControllerConfig.routeLoader = routeutils.NewLoader(mgr.GetClient())
236238
}

pkg/config/controller_config.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package config
22

33
import (
4+
"sigs.k8s.io/aws-load-balancer-controller/pkg/shared_constants"
45
"strings"
56
"time"
67

@@ -45,12 +46,16 @@ const (
4546

4647
var (
4748
trackingTagKeys = sets.NewString(
48-
"elbv2.k8s.aws/cluster",
49-
"elbv2.k8s.aws/resource",
49+
shared_constants.TagKeyK8sCluster,
50+
shared_constants.TagKeyResource,
5051
"ingress.k8s.aws/stack",
5152
"ingress.k8s.aws/resource",
5253
"service.k8s.aws/stack",
5354
"service.k8s.aws/resource",
55+
"gateway.k8s.aws.nlb/resource",
56+
"gateway.k8s.aws.alb/resource",
57+
"gateway.k8s.aws.nlb/stack",
58+
"gateway.k8s.aws.alb/stack",
5459
)
5560
)
5661

pkg/config/controller_config_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package config
33
import (
44
"github.com/pkg/errors"
55
"github.com/stretchr/testify/assert"
6+
"sigs.k8s.io/aws-load-balancer-controller/pkg/shared_constants"
67
"testing"
78
)
89

@@ -28,7 +29,7 @@ func TestControllerConfig_validateDefaultTagsCollisionWithTrackingTags(t *testin
2829
name: "default tags and tracking tags have collision",
2930
fields: fields{
3031
DefaultTags: map[string]string{
31-
"elbv2.k8s.aws/cluster": "value-a",
32+
shared_constants.TagKeyK8sCluster: "value-a",
3233
},
3334
},
3435
wantErr: errors.New("tag key elbv2.k8s.aws/cluster cannot be specified in default-tags flag"),
@@ -75,7 +76,7 @@ func TestControllerConfig_validateExternalManagedTagsCollisionWithTrackingTags(t
7576
{
7677
name: "external managed tags and tracking tags have collision",
7778
fields: fields{
78-
ExternalManagedTags: []string{"elbv2.k8s.aws/cluster"},
79+
ExternalManagedTags: []string{shared_constants.TagKeyK8sCluster},
7980
},
8081
wantErr: errors.New("tag key elbv2.k8s.aws/cluster cannot be specified in external-managed-tags flag"),
8182
},

pkg/deploy/tracking/provider.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,11 @@ import (
44
"fmt"
55
"sigs.k8s.io/aws-load-balancer-controller/pkg/algorithm"
66
"sigs.k8s.io/aws-load-balancer-controller/pkg/model/core"
7+
"sigs.k8s.io/aws-load-balancer-controller/pkg/shared_constants"
78
)
89

10+
// TODO(ztn) - Add Gateway documentation here?
11+
912
//we use AWS tags and K8s labels to track resources we have created.
1013
//
1114
//For AWS resources created by this controller, the tagging strategy is as follows:
@@ -32,9 +35,6 @@ import (
3235
// * `service.k8s.aws/stack-namespace: namespace`
3336
// * `service.k8s.aws/stack-name: serviceName`
3437

35-
// AWS TagKey for cluster resources.
36-
const clusterNameTagKey = "elbv2.k8s.aws/cluster"
37-
3838
// Legacy AWS TagKey for cluster resources, which is used by AWSALBIngressController(v1.1.3+)
3939
const clusterNameTagKeyLegacy = "ingress.k8s.aws/cluster"
4040

@@ -85,8 +85,8 @@ func (p *defaultProvider) ResourceIDTagKey() string {
8585
func (p *defaultProvider) StackTags(stack core.Stack) map[string]string {
8686
stackID := stack.StackID()
8787
return map[string]string{
88-
clusterNameTagKey: p.clusterName,
89-
p.prefixedTrackingKey("stack"): stackID.String(),
88+
shared_constants.TagKeyK8sCluster: p.clusterName,
89+
p.prefixedTrackingKey("stack"): stackID.String(),
9090
}
9191
}
9292

pkg/deploy/tracking/provider_test.go

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package tracking
33
import (
44
"github.com/stretchr/testify/assert"
55
"sigs.k8s.io/aws-load-balancer-controller/pkg/model/core"
6+
"sigs.k8s.io/aws-load-balancer-controller/pkg/shared_constants"
67
"testing"
78
)
89

@@ -46,26 +47,26 @@ func Test_defaultProvider_StackTags(t *testing.T) {
4647
provider: NewDefaultProvider("ingress.k8s.aws", "cluster-name"),
4748
args: args{stack: core.NewDefaultStack(core.StackID{Namespace: "", Name: "awesome-group"})},
4849
want: map[string]string{
49-
"elbv2.k8s.aws/cluster": "cluster-name",
50-
"ingress.k8s.aws/stack": "awesome-group",
50+
shared_constants.TagKeyK8sCluster: "cluster-name",
51+
"ingress.k8s.aws/stack": "awesome-group",
5152
},
5253
},
5354
{
5455
name: "stackTags for implicit IngressGroup",
5556
provider: NewDefaultProvider("ingress.k8s.aws", "cluster-name"),
5657
args: args{stack: core.NewDefaultStack(core.StackID{Namespace: "namespace", Name: "ingressName"})},
5758
want: map[string]string{
58-
"elbv2.k8s.aws/cluster": "cluster-name",
59-
"ingress.k8s.aws/stack": "namespace/ingressName",
59+
shared_constants.TagKeyK8sCluster: "cluster-name",
60+
"ingress.k8s.aws/stack": "namespace/ingressName",
6061
},
6162
},
6263
{
6364
name: "stackTags for Service",
6465
provider: NewDefaultProvider("service.k8s.aws", "cluster-name"),
6566
args: args{stack: core.NewDefaultStack(core.StackID{Namespace: "namespace", Name: "serviceName"})},
6667
want: map[string]string{
67-
"elbv2.k8s.aws/cluster": "cluster-name",
68-
"service.k8s.aws/stack": "namespace/serviceName",
68+
shared_constants.TagKeyK8sCluster: "cluster-name",
69+
"service.k8s.aws/stack": "namespace/serviceName",
6970
},
7071
},
7172
}
@@ -100,9 +101,9 @@ func Test_defaultProvider_ResourceTags(t *testing.T) {
100101
res: fakeRes,
101102
},
102103
want: map[string]string{
103-
"elbv2.k8s.aws/cluster": "cluster-name",
104-
"ingress.k8s.aws/stack": "namespace/ingressName",
105-
"ingress.k8s.aws/resource": "fake-id",
104+
shared_constants.TagKeyK8sCluster: "cluster-name",
105+
"ingress.k8s.aws/stack": "namespace/ingressName",
106+
"ingress.k8s.aws/resource": "fake-id",
106107
},
107108
},
108109
}

pkg/gateway/constants/controller_constants.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,6 @@ const (
2525

2626
// NLBRouteResourceGroupVersion the groupVersion used by TCPRoute and UDPRoute
2727
NLBRouteResourceGroupVersion = "gateway.networking.k8s.io/v1alpha2"
28-
29-
// NLBGatewayFinalizer the finalizer we attach the NLB Gateway object
30-
NLBGatewayFinalizer = "gateway.k8s.aws/nlb-finalizer"
3128
)
3229

3330
/*
@@ -43,7 +40,4 @@ const (
4340

4441
// ALBRouteResourceGroupVersion the groupVersion used by HTTPRoute and GRPCRoute
4542
ALBRouteResourceGroupVersion = "gateway.networking.k8s.io/v1"
46-
47-
// ALBGatewayFinalizer the finalizer we attach the ALB Gateway object
48-
ALBGatewayFinalizer = "gateway.k8s.aws/alb-finalizer"
4943
)

pkg/gateway/model/base_model_builder.go

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,12 @@ func NewModelBuilder(subnetsResolver networking.SubnetsResolver,
3636
gwTagHelper := newTagHelper(sets.New(lbcConfig.ExternalManagedTags...), lbcConfig.DefaultTags)
3737
subnetBuilder := newSubnetModelBuilder(loadBalancerType, trackingProvider, subnetsResolver, elbv2TaggingManager)
3838
sgBuilder := newSecurityGroupBuilder(gwTagHelper, clusterName, enableBackendSG, sgResolver, backendSGProvider, logger)
39+
lbBuilder := newLoadBalancerBuilder(loadBalancerType, gwTagHelper, clusterName)
3940

4041
return &baseModelBuilder{
4142
subnetBuilder: subnetBuilder,
4243
securityGroupBuilder: sgBuilder,
43-
lbBuilder: newLoadBalancerBuilder(loadBalancerType, gwTagHelper, clusterName),
44+
lbBuilder: lbBuilder,
4445
logger: logger,
4546

4647
defaultLoadBalancerScheme: elbv2model.LoadBalancerScheme(defaultLoadBalancerScheme),
@@ -62,14 +63,14 @@ type baseModelBuilder struct {
6263
}
6364

6465
func (baseBuilder *baseModelBuilder) Build(ctx context.Context, gw *gwv1.Gateway, lbConf *elbv2gw.LoadBalancerConfiguration, routes map[int][]routeutils.RouteDescriptor) (core.Stack, *elbv2model.LoadBalancer, bool, error) {
66+
stack := core.NewDefaultStack(core.StackID(k8s.NamespacedName(gw)))
6567
if gw.DeletionTimestamp != nil && !gw.DeletionTimestamp.IsZero() {
6668
if baseBuilder.isDeleteProtected(lbConf) {
6769
return nil, nil, false, errors.Errorf("Unable to delete gateway %+v because deletion protection is enabled.", k8s.NamespacedName(gw))
6870
}
71+
return stack, nil, false, nil
6972
}
7073

71-
stack := core.NewDefaultStack(core.StackID(k8s.NamespacedName(gw)))
72-
7374
/* Basic LB stuff (Scheme, IP Address Type) */
7475
scheme, err := baseBuilder.buildLoadBalancerScheme(lbConf)
7576

@@ -100,15 +101,15 @@ func (baseBuilder *baseModelBuilder) Build(ctx context.Context, gw *gwv1.Gateway
100101
}
101102

102103
/* Combine everything to form a LoadBalancer */
103-
104-
// TODO - Fix
105-
_, err = baseBuilder.lbBuilder.buildLoadBalancerSpec(ctx, scheme, ipAddressType, gw, lbConf, subnets, securityGroups.securityGroupTokens)
104+
spec, err := baseBuilder.lbBuilder.buildLoadBalancerSpec(scheme, ipAddressType, gw, lbConf, subnets, securityGroups.securityGroupTokens)
106105

107106
if err != nil {
108107
return nil, nil, false, err
109108
}
110109

111-
return stack, nil, false, nil
110+
lb := elbv2model.NewLoadBalancer(stack, resourceIDLoadBalancer, spec)
111+
112+
return stack, lb, securityGroups.backendSecurityGroupAllocated, nil
112113
}
113114

114115
func (baseBuilder *baseModelBuilder) isDeleteProtected(lbConf *elbv2gw.LoadBalancerConfiguration) bool {

pkg/gateway/model/model_build_loadbalancer.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package model
22

33
import (
4-
"context"
54
"crypto/sha256"
65
"encoding/hex"
76
"fmt"
@@ -28,7 +27,7 @@ const (
2827
)
2928

3029
type loadBalancerBuilder interface {
31-
buildLoadBalancerSpec(ctx context.Context, scheme elbv2model.LoadBalancerScheme, ipAddressType elbv2model.IPAddressType, gw *gwv1.Gateway, lbConf *elbv2gw.LoadBalancerConfiguration, subnets buildLoadBalancerSubnetsOutput, securityGroupTokens []core.StringToken) (elbv2model.LoadBalancerSpec, error)
30+
buildLoadBalancerSpec(scheme elbv2model.LoadBalancerScheme, ipAddressType elbv2model.IPAddressType, gw *gwv1.Gateway, lbConf *elbv2gw.LoadBalancerConfiguration, subnets buildLoadBalancerSubnetsOutput, securityGroupTokens []core.StringToken) (elbv2model.LoadBalancerSpec, error)
3231
}
3332

3433
type loadBalancerBuilderImpl struct {
@@ -45,7 +44,7 @@ func newLoadBalancerBuilder(loadBalancerType elbv2model.LoadBalancerType, tagHel
4544
}
4645
}
4746

48-
func (lbModelBuilder *loadBalancerBuilderImpl) buildLoadBalancerSpec(ctx context.Context, scheme elbv2model.LoadBalancerScheme, ipAddressType elbv2model.IPAddressType, gw *gwv1.Gateway, lbConf *elbv2gw.LoadBalancerConfiguration, subnets buildLoadBalancerSubnetsOutput, securityGroupTokens []core.StringToken) (elbv2model.LoadBalancerSpec, error) {
47+
func (lbModelBuilder *loadBalancerBuilderImpl) buildLoadBalancerSpec(scheme elbv2model.LoadBalancerScheme, ipAddressType elbv2model.IPAddressType, gw *gwv1.Gateway, lbConf *elbv2gw.LoadBalancerConfiguration, subnets buildLoadBalancerSubnetsOutput, securityGroupTokens []core.StringToken) (elbv2model.LoadBalancerSpec, error) {
4948

5049
name, err := lbModelBuilder.buildLoadBalancerName(lbConf, gw, scheme)
5150
if err != nil {

0 commit comments

Comments
 (0)