@@ -27,6 +27,7 @@ def parse_port_string(port, ssl_bind_string):
2727def get_tcp_routes (details , routes , port , port_num ):
2828 tcp_routes = []
2929 routes_added = []
30+ addresses_added = []
3031 if port != port_num and port != port_num + "/ssl" :
3132 return tcp_routes , routes_added
3233
@@ -35,11 +36,15 @@ def get_tcp_routes(details, routes, port, port_num):
3536 if tcp_ports and port in tcp_ports :
3637 for route in routes :
3738 if route ["port" ] == port_num :
38- tcp_route = ["server %s %s:%s" % (route ["container_name" ], route ["addr" ], route ["port" ])]
39- health_check = get_healthcheck_string (details , _service_alias )
40- tcp_route .append (health_check )
41- tcp_routes .append (" " .join (tcp_route ))
39+ address = "%s:%s" % (route ["addr" ], route ["port" ])
40+ if address not in addresses_added :
41+ addresses_added .append (address )
42+ tcp_route = ["server %s %s" % (route ["container_name" ], address )]
43+ health_check = get_healthcheck_string (details , _service_alias )
44+ tcp_route .append (health_check )
45+ tcp_routes .append (" " .join (tcp_route ))
4246 routes_added .append (route )
47+
4348 return tcp_routes , routes_added
4449
4550
0 commit comments