Tweak to the way new host variables are created for delegated hosts
This commit is contained in:
parent
18adfc6d1a
commit
0fb4a6a67b
1 changed files with 9 additions and 8 deletions
|
@ -299,6 +299,13 @@ class VariableManager:
|
||||||
templar = Templar(loader=loader, variables=all_vars)
|
templar = Templar(loader=loader, variables=all_vars)
|
||||||
delegated_host_name = templar.template(task.delegate_to)
|
delegated_host_name = templar.template(task.delegate_to)
|
||||||
|
|
||||||
|
# a dictionary of variables to use if we have to create a new host below
|
||||||
|
new_delegated_host_vars = dict(
|
||||||
|
ansible_host=delegated_host_name,
|
||||||
|
ansible_user=C.DEFAULT_REMOTE_USER,
|
||||||
|
ansible_connection=C.DEFAULT_TRANSPORT,
|
||||||
|
)
|
||||||
|
|
||||||
# now try to find the delegated-to host in inventory, or failing that,
|
# now try to find the delegated-to host in inventory, or failing that,
|
||||||
# create a new host on the fly so we can fetch variables for it
|
# create a new host on the fly so we can fetch variables for it
|
||||||
delegated_host = None
|
delegated_host = None
|
||||||
|
@ -315,16 +322,10 @@ class VariableManager:
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
delegated_host = Host(name=delegated_host_name)
|
delegated_host = Host(name=delegated_host_name)
|
||||||
delegated_host.vars.update(dict(
|
delegated_host.vars.update(new_delegated_host_vars)
|
||||||
ansible_host=delegated_host_name,
|
|
||||||
ansible_connection = C.DEFAULT_TRANSPORT,
|
|
||||||
))
|
|
||||||
else:
|
else:
|
||||||
delegated_host = Host(name=delegated_host_name)
|
delegated_host = Host(name=delegated_host_name)
|
||||||
delegated_host.vars.update(dict(
|
delegated_host.vars.update(new_delegated_host_vars)
|
||||||
ansible_host=delegated_host_name,
|
|
||||||
ansible_connection = C.DEFAULT_TRANSPORT,
|
|
||||||
))
|
|
||||||
|
|
||||||
# now we go fetch the vars for the delegated-to host and save them in our
|
# now we go fetch the vars for the delegated-to host and save them in our
|
||||||
# master dictionary of variables to be used later in the TaskExecutor/PlayContext
|
# master dictionary of variables to be used later in the TaskExecutor/PlayContext
|
||||||
|
|
Loading…
Reference in a new issue