mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Ensure when
warning is checked before expanding (#25092)
The `when` condition templating warning should only happen if the condition itself contains templating, not if variables in the condition are themselves composed through templating Before ``` vars: x: hello y: "{{ x }}" tasks: - debug: msg=hello when: y ``` would fire a warning because `y` would get expanded to `{{ x }}`. This checks whether a warning is required prior to expansion.
This commit is contained in:
parent
69efb61008
commit
23324bdda0
1 changed files with 5 additions and 5 deletions
|
@ -127,6 +127,11 @@ class Conditional:
|
||||||
if conditional is None or conditional == '':
|
if conditional is None or conditional == '':
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
if templar.is_template(conditional):
|
||||||
|
display.warning('when statements should not include jinja2 '
|
||||||
|
'templating delimiters such as {{ }} or {%% %%}. '
|
||||||
|
'Found: %s' % conditional)
|
||||||
|
|
||||||
# pull the "bare" var out, which allows for nested conditionals
|
# pull the "bare" var out, which allows for nested conditionals
|
||||||
# and things like:
|
# and things like:
|
||||||
# - assert:
|
# - assert:
|
||||||
|
@ -137,11 +142,6 @@ class Conditional:
|
||||||
if conditional in all_vars and VALID_VAR_REGEX.match(conditional):
|
if conditional in all_vars and VALID_VAR_REGEX.match(conditional):
|
||||||
conditional = all_vars[conditional]
|
conditional = all_vars[conditional]
|
||||||
|
|
||||||
if templar.is_template(conditional):
|
|
||||||
display.warning('when statements should not include jinja2 '
|
|
||||||
'templating delimiters such as {{ }} or {%% %%}. '
|
|
||||||
'Found: %s' % conditional)
|
|
||||||
|
|
||||||
# make sure the templar is using the variables specified with this method
|
# make sure the templar is using the variables specified with this method
|
||||||
templar.set_available_variables(variables=all_vars)
|
templar.set_available_variables(variables=all_vars)
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue