mirror of
https://github.com/docker/compose.git
synced 2025-07-21 12:44:54 +02:00
Merge pull request #7866 from luca-nardelli/improve-mandatory-variables-issues
Report which variable fails interpolation when they are mandatory
This commit is contained in:
commit
f1059d75ed
@ -111,12 +111,14 @@ class TemplateWithDefaults(Template):
|
|||||||
var, _, err = braced.partition(':?')
|
var, _, err = braced.partition(':?')
|
||||||
result = mapping.get(var)
|
result = mapping.get(var)
|
||||||
if not result:
|
if not result:
|
||||||
|
err = err or var
|
||||||
raise UnsetRequiredSubstitution(err)
|
raise UnsetRequiredSubstitution(err)
|
||||||
return result
|
return result
|
||||||
elif '?' == sep:
|
elif '?' == sep:
|
||||||
var, _, err = braced.partition('?')
|
var, _, err = braced.partition('?')
|
||||||
if var in mapping:
|
if var in mapping:
|
||||||
return mapping.get(var)
|
return mapping.get(var)
|
||||||
|
err = err or var
|
||||||
raise UnsetRequiredSubstitution(err)
|
raise UnsetRequiredSubstitution(err)
|
||||||
|
|
||||||
# Modified from python2.7/string.py
|
# Modified from python2.7/string.py
|
||||||
|
@ -416,7 +416,7 @@ def test_interpolate_mandatory_no_err_msg(defaults_interpolator):
|
|||||||
with pytest.raises(UnsetRequiredSubstitution) as e:
|
with pytest.raises(UnsetRequiredSubstitution) as e:
|
||||||
defaults_interpolator("not ok ${BAZ?}")
|
defaults_interpolator("not ok ${BAZ?}")
|
||||||
|
|
||||||
assert e.value.err == ''
|
assert e.value.err == 'BAZ'
|
||||||
|
|
||||||
|
|
||||||
def test_interpolate_mixed_separators(defaults_interpolator):
|
def test_interpolate_mixed_separators(defaults_interpolator):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user