Closed sterwill closed 7 months ago
Thank you for the issue. I see this conflict when the code is generated:
Potential property conflict: ecs LoadBalancer AWS::ECS::Service.LoadBalancer: ['ContainerName', 'ContainerPort', 'LoadBalancerName', 'TargetGroupArn'] AWS::ECS::TaskSet.LoadBalancer: ['ContainerName', 'ContainerPort', 'TargetGroupArn']
I'll have to decide whether to delete TaskSet.LoadBalancer to prefer Service.LoadBalancer or perhaps rename the TaskSet one.
When I upgraded troposphere recently,
troposphere.ecs.LoadBalancer
lost itsLoadBalancerName
attribute, which is necessary for classic ELB support. The CloudFormation docs for AWS::ECS::Service LoadBalancer still listLoadBalancerName
, so it looked like a troposphere issue. The comment on the class gave me a clue:It looks like the
AWS::ECS::TaskSet.LoadBalancer
is getting used to generate this type, although I would expectAWS::ECS::Service.LoadBalancer
to map to that class instead (and maybeTaskSetLoadBalancer
handles the other one?). I pulled the CloudFormation metadata archive and the service descriptions seem to confirm it.I didn't submit a PR because I'm not sure how to handle a change like this in troposphere, since it has some back-compat implications.