Improve error/warning messages w.r.t. YAML quoting (#1205)

* Remove superfluous conversions/assignments.

* Improve messages.
This commit is contained in:
Felix Fontein
2025-11-16 12:32:51 +01:00
committed by GitHub
parent e42423b949
commit c61c0e24b8
8 changed files with 35 additions and 21 deletions
+4 -3
View File
@@ -210,13 +210,14 @@ class ExecManager(BaseComposeManager):
self.stdin += "\n"
if self.env is not None:
for name, value in list(self.env.items()):
for name, value in self.env.items():
if not isinstance(value, str):
self.fail(
"Non-string value found for env option. Ambiguous env options must be "
f"wrapped in quotes to avoid them being interpreted. Key: {name}"
"wrapped in quotes to avoid them being interpreted when directly specified "
"in YAML, or explicitly converted to strings when the option is templated. "
f"Key: {name}"
)
self.env[name] = to_text(value, errors="surrogate_or_strict")
def get_exec_cmd(self, dry_run: bool) -> list[str]:
args = self.get_base_args(plain_progress=True) + ["exec"]