@@ -67,25 +67,31 @@ def initialize_family_services(
6767
6868
6969def handle_families_dependencies (
70- settings : ComposeXSettings , families_post : list
70+ settings : ComposeXSettings , families_post : list [ tuple [ str , str ]]
7171) -> None :
7272 """
73- Function to handle family to family services based on docker compose depends_on
74-
75- :param ecs_composex.common.settings.ComposeXSettings settings:
76- :param list families_post:
73+ Function to handle family to family services based on docker compose depends_on.
74+ Given the stack name and the family (services) name can be different due to special chars,
75+ we need to evaluate each of the families for both names to make sure to find it.
7776 """
78- for family in families_post :
79- for family_name in settings .families [family ].services_depends_on :
80- if family_name not in families_post :
77+ for family_def in families_post :
78+ _family_title , _family_name = family_def
79+ for family_name in settings .families [_family_title ].services_depends_on :
80+ for __family_title , __family_def in settings .families .items ():
81+ if __family_def .name == family_name :
82+ family_title = __family_title
83+ break
84+ else :
8185 continue
8286 if (
83- family_name not in settings .families [family ].stack .DependsOn
84- and family_name != settings .families [family ].name
87+ family_title not in settings .families [_family_title ].stack .DependsOn
88+ and family_title != settings .families [_family_title ].name
8589 ):
86- LOG .info (f"Adding dependency between { family_name } and { family } " )
87- settings .families [family ].stack .DependsOn .append (
88- settings .families [family_name ].stack .title
90+ LOG .info (
91+ f"Adding dependency between { family_name } |{ family_title } and { _family_name } |{ _family_title } "
92+ )
93+ settings .families [_family_title ].stack .DependsOn .append (
94+ settings .families [family_title ].stack .title
8995 )
9096
9197
@@ -133,7 +139,7 @@ def add_compose_families(
133139 family .validate_compute_configuration_for_task (settings )
134140
135141 families_stacks = [
136- family
142+ ( family , settings . families [ family ]. name )
137143 for family in settings .root_stack .stack_template .resources
138144 if (
139145 family in settings .families
0 commit comments