Inject the play context vars into the variables used for loop item templating
This commit is contained in:
parent
bcbcfc79be
commit
c2435fab7e
1 changed files with 10 additions and 2 deletions
|
@ -141,10 +141,18 @@ class TaskExecutor:
|
|||
and returns the items result.
|
||||
'''
|
||||
|
||||
# create a copy of the job vars here so that we can modify
|
||||
# them temporarily without changing them too early for other
|
||||
# parts of the code that might still need a pristine version
|
||||
vars_copy = self._job_vars.copy()
|
||||
|
||||
# now we update them with the play context vars
|
||||
self._play_context.update_vars(vars_copy)
|
||||
|
||||
items = None
|
||||
if self._task.loop and self._task.loop in lookup_loader:
|
||||
loop_terms = listify_lookup_plugin_terms(terms=self._task.loop_args, variables=self._job_vars, loader=self._loader, fail_on_undefined=True)
|
||||
items = lookup_loader.get(self._task.loop, loader=self._loader).run(terms=loop_terms, variables=self._job_vars)
|
||||
loop_terms = listify_lookup_plugin_terms(terms=self._task.loop_args, variables=vars_copy, loader=self._loader, fail_on_undefined=True)
|
||||
items = lookup_loader.get(self._task.loop, loader=self._loader).run(terms=loop_terms, variables=vars_copy)
|
||||
|
||||
return items
|
||||
|
||||
|
|
Loading…
Reference in a new issue