in pkg/cloudformation/cloudformation.go [135:161]
func buildAWSElasticLoadBalancingV2TargetGroup(vpcID string, instanceIDs []string, nodePort int, dependsOn []string) *resources.AWSElasticLoadBalancingV2TargetGroup {
targets := make([]resources.AWSElasticLoadBalancingV2TargetGroup_TargetDescription, len(instanceIDs))
for i, instanceID := range instanceIDs {
targets[i] = resources.AWSElasticLoadBalancingV2TargetGroup_TargetDescription{Id: instanceID}
}
return &resources.AWSElasticLoadBalancingV2TargetGroup{
HealthCheckIntervalSeconds: 30,
HealthCheckPort: "traffic-port",
HealthCheckProtocol: "TCP",
HealthCheckTimeoutSeconds: 10,
HealthyThresholdCount: 3,
Port: nodePort,
Protocol: "TCP",
Tags: []resources.Tag{
{
Key: "com.github.amazon-apigateway-ingress-controller/stack",
Value: cfn.Ref("AWS::StackName"),
},
},
TargetType: "instance",
Targets: targets,
UnhealthyThresholdCount: 3,
VpcId: vpcID,
}
}