@@ -528,14 +528,6 @@ func (c *Cloud) createListenerV2(loadBalancerArn *string, mapping nlbPortMapping
528
528
return nil , err
529
529
}
530
530
531
- elbTags := []* elbv2.Tag {}
532
- for k , v := range tags {
533
- elbTags = append (elbTags , & elbv2.Tag {
534
- Key : aws .String (k ),
535
- Value : aws .String (v ),
536
- })
537
- }
538
-
539
531
createListernerInput := & elbv2.CreateListenerInput {
540
532
LoadBalancerArn : loadBalancerArn ,
541
533
Port : aws .Int64 (mapping .FrontendPort ),
@@ -544,7 +536,6 @@ func (c *Cloud) createListenerV2(loadBalancerArn *string, mapping nlbPortMapping
544
536
TargetGroupArn : target .TargetGroupArn ,
545
537
Type : aws .String (elbv2 .ActionTypeEnumForward ),
546
538
}},
547
- Tags : elbTags ,
548
539
}
549
540
if mapping .FrontendProtocol == "TLS" {
550
541
if mapping .SSLPolicy != "" {
@@ -604,24 +595,35 @@ func (c *Cloud) ensureTargetGroup(targetGroup *elbv2.TargetGroup, serviceName ty
604
595
input .HealthCheckPath = aws .String (mapping .HealthCheckConfig .Path )
605
596
}
606
597
598
+ result , err := c .elbv2 .CreateTargetGroup (input )
599
+ if err != nil {
600
+ return nil , fmt .Errorf ("error creating load balancer target group: %q" , err )
601
+ }
602
+ if len (result .TargetGroups ) != 1 {
603
+ return nil , fmt .Errorf ("expected only one target group on CreateTargetGroup, got %d groups" , len (result .TargetGroups ))
604
+ }
605
+
607
606
if len (tags ) != 0 {
608
607
targetGroupTags := make ([]* elbv2.Tag , 0 , len (tags ))
609
608
for k , v := range tags {
610
609
targetGroupTags = append (targetGroupTags , & elbv2.Tag {
611
610
Key : aws .String (k ), Value : aws .String (v ),
612
611
})
613
612
}
614
- input .Tags = targetGroupTags
615
- }
616
- result , err := c .elbv2 .CreateTargetGroup (input )
617
- if err != nil {
618
- return nil , fmt .Errorf ("error creating load balancer target group: %q" , err )
619
- }
620
- if len (result .TargetGroups ) != 1 {
621
- return nil , fmt .Errorf ("expected only one target group on CreateTargetGroup, got %d groups" , len (result .TargetGroups ))
613
+ tgArn := aws .StringValue (result .TargetGroups [0 ].TargetGroupArn )
614
+ if _ , err := c .elbv2 .AddTags (& elbv2.AddTagsInput {
615
+ ResourceArns : []* string {aws .String (tgArn )},
616
+ Tags : targetGroupTags ,
617
+ }); err != nil {
618
+ return nil , fmt .Errorf ("error adding tags for targetGroup %s due to %q" , tgArn , err )
619
+ }
622
620
}
623
621
624
622
tg := result .TargetGroups [0 ]
623
+ tgARN := aws .StringValue (tg .TargetGroupArn )
624
+ if err := c .ensureTargetGroupTargets (tgARN , expectedTargets , nil ); err != nil {
625
+ return nil , err
626
+ }
625
627
return tg , nil
626
628
}
627
629
0 commit comments