mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-04-26 12:21:26 -07:00
* Revert " Update TaskInclude _raw_params with the expanded/templated path to file (#39365)"
This reverts commit 4b01b92cfe
.
* Improve error messaging, catch error templating parent path
This commit is contained in:
parent
24c0f6f872
commit
c403f01971
6 changed files with 16 additions and 28 deletions
|
@ -189,7 +189,19 @@ def load_list_of_tasks(ds, play, block=None, role=None, task_include=None, use_h
|
|||
if not isinstance(parent_include, TaskInclude):
|
||||
parent_include = parent_include._parent
|
||||
continue
|
||||
parent_include_dir = os.path.dirname(templar.template(parent_include.args.get('_raw_params')))
|
||||
try:
|
||||
parent_include_dir = os.path.dirname(templar.template(parent_include.args.get('_raw_params')))
|
||||
except AnsibleUndefinedVariable as e:
|
||||
if not parent_include.statically_loaded:
|
||||
raise AnsibleParserError(
|
||||
"Error when evaluating variable in dynamic parent include path: %s. "
|
||||
"When using static imports, the parent dynamic include cannot utilize host facts "
|
||||
"or variables from inventory" % parent_include.args.get('_raw_params'),
|
||||
obj=task_ds,
|
||||
suppress_extended_error=True,
|
||||
orig_exc=e
|
||||
)
|
||||
raise
|
||||
if cumulative_path is None:
|
||||
cumulative_path = parent_include_dir
|
||||
elif not os.path.isabs(cumulative_path):
|
||||
|
@ -212,9 +224,9 @@ def load_list_of_tasks(ds, play, block=None, role=None, task_include=None, use_h
|
|||
include_target = templar.template(t.args['_raw_params'])
|
||||
except AnsibleUndefinedVariable as e:
|
||||
raise AnsibleParserError(
|
||||
"Error when evaluating variable in include name: %s.\n\n"
|
||||
"When using static includes, ensure that any variables used in their names are defined in vars/vars_files\n"
|
||||
"or extra-vars passed in from the command line. Static includes cannot use variables from inventory\n"
|
||||
"Error when evaluating variable in import path: %s.\n\n"
|
||||
"When using static imports, ensure that any variables used in their names are defined in vars/vars_files\n"
|
||||
"or extra-vars passed in from the command line. Static imports cannot use variables from facts or inventory\n"
|
||||
"sources like group or host vars." % t.args['_raw_params'],
|
||||
obj=task_ds,
|
||||
suppress_extended_error=True,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue