Skip to content

Commit 198623d

Browse files
committed
Fix interpolation for COMPOSE_PROJECT_NAME
Fixes #1073 Signed-off-by: Ruben Jenster <[email protected]>
1 parent 106b4da commit 198623d

File tree

1 file changed

+14
-13
lines changed

1 file changed

+14
-13
lines changed

podman_compose.py

+14-13
Original file line numberDiff line numberDiff line change
@@ -1980,6 +1980,20 @@ def _parse_compose_file(self):
19801980
sys.exit(1)
19811981
content = normalize(content)
19821982
# log(filename, json.dumps(content, indent = 2))
1983+
1984+
if not project_name:
1985+
project_name = content.get("name")
1986+
if project_name is None:
1987+
# More strict then actually needed for simplicity:
1988+
# podman requires [a-zA-Z0-9][a-zA-Z0-9_.-]*
1989+
project_name = self.environ.get("COMPOSE_PROJECT_NAME", dir_basename.lower())
1990+
project_name = norm_re.sub("", project_name)
1991+
if not project_name:
1992+
raise RuntimeError(f"Project name [{dir_basename}] normalized to empty")
1993+
1994+
self.project_name = project_name
1995+
self.environ.update({"COMPOSE_PROJECT_NAME": self.project_name})
1996+
19831997
content = rec_subs(content, self.environ)
19841998
if isinstance(services := content.get('services'), dict):
19851999
for service in services.values():
@@ -2012,19 +2026,6 @@ def _parse_compose_file(self):
20122026
log.debug(" ** merged:\n%s", json.dumps(compose, indent=2))
20132027
# ver = compose.get('version')
20142028

2015-
if not project_name:
2016-
project_name = compose.get("name")
2017-
if project_name is None:
2018-
# More strict then actually needed for simplicity:
2019-
# podman requires [a-zA-Z0-9][a-zA-Z0-9_.-]*
2020-
project_name = self.environ.get("COMPOSE_PROJECT_NAME", dir_basename.lower())
2021-
project_name = norm_re.sub("", project_name)
2022-
if not project_name:
2023-
raise RuntimeError(f"Project name [{dir_basename}] normalized to empty")
2024-
2025-
self.project_name = project_name
2026-
self.environ.update({"COMPOSE_PROJECT_NAME": self.project_name})
2027-
20282029
services = compose.get("services")
20292030
if services is None:
20302031
services = {}

0 commit comments

Comments
 (0)