|
|
|
@ -537,6 +537,13 @@ class VariableManager:
|
|
|
|
delegated_host_name = None
|
|
|
|
delegated_host_name = None
|
|
|
|
if task.delegate_to:
|
|
|
|
if task.delegate_to:
|
|
|
|
delegated_host_name = templar.template(task.delegate_to, fail_on_undefined=False)
|
|
|
|
delegated_host_name = templar.template(task.delegate_to, fail_on_undefined=False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# no need to do work if omitted
|
|
|
|
|
|
|
|
if delegated_host_name != self._omit_token:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if not delegated_host_name:
|
|
|
|
|
|
|
|
raise AnsibleError('Empty hostname produced from delegate_to: "%s"' % task.delegate_to)
|
|
|
|
|
|
|
|
|
|
|
|
delegated_host = self._inventory.get_host(delegated_host_name)
|
|
|
|
delegated_host = self._inventory.get_host(delegated_host_name)
|
|
|
|
if delegated_host is None:
|
|
|
|
if delegated_host is None:
|
|
|
|
for h in self._inventory.get_hosts(ignore_limits=True, ignore_restrictions=True):
|
|
|
|
for h in self._inventory.get_hosts(ignore_limits=True, ignore_restrictions=True):
|
|
|
|
@ -558,6 +565,7 @@ class VariableManager:
|
|
|
|
)
|
|
|
|
)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
delegated_vars['ansible_delegated_vars'][delegated_host_name]['inventory_hostname'] = variables.get('inventory_hostname')
|
|
|
|
delegated_vars['ansible_delegated_vars'][delegated_host_name]['inventory_hostname'] = variables.get('inventory_hostname')
|
|
|
|
|
|
|
|
|
|
|
|
return delegated_vars, delegated_host_name
|
|
|
|
return delegated_vars, delegated_host_name
|
|
|
|
|
|
|
|
|
|
|
|
def _get_delegated_vars(self, play, task, existing_variables):
|
|
|
|
def _get_delegated_vars(self, play, task, existing_variables):
|
|
|
|
|