summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorBrian Coca <brian.coca+git@gmail.com>2017-06-19 18:09:15 -0400
committerBrian Coca <brian.coca+git@gmail.com>2017-06-19 18:09:15 -0400
commitec26494167f525d582c849e4f244743e093bf232 (patch)
treebe73ad65a60a41dcb972283807e9fa85ba8a103d /lib
parent7fbd7fc4f863e46a81e2153ebdd53ab2bb560d20 (diff)
downloadansible-ec26494167f525d582c849e4f244743e093bf232.tar.gz
backported delegation/facts fix, see #25880
Diffstat (limited to 'lib')
-rw-r--r--lib/ansible/executor/task_executor.py2
-rw-r--r--lib/ansible/plugins/strategy/__init__.py2
-rw-r--r--lib/ansible/vars/__init__.py1
3 files changed, 3 insertions, 2 deletions
diff --git a/lib/ansible/executor/task_executor.py b/lib/ansible/executor/task_executor.py
index a8482af242..f52596bad1 100644
--- a/lib/ansible/executor/task_executor.py
+++ b/lib/ansible/executor/task_executor.py
@@ -617,7 +617,7 @@ class TaskExecutor:
delegated_vars = variables.get('ansible_delegated_vars', dict()).get(self._task.delegate_to, dict()).copy()
if len(delegated_vars) > 0:
result["_ansible_delegated_vars"] = dict()
- for k in ('ansible_host', ):
+ for k in ('ansible_delegated_host', 'ansible_host', ):
result["_ansible_delegated_vars"][k] = delegated_vars.get(k)
# and return
diff --git a/lib/ansible/plugins/strategy/__init__.py b/lib/ansible/plugins/strategy/__init__.py
index 87070e1c89..0ba97c4079 100644
--- a/lib/ansible/plugins/strategy/__init__.py
+++ b/lib/ansible/plugins/strategy/__init__.py
@@ -238,7 +238,7 @@ class StrategyBase:
return host_list
def get_delegated_hosts(self, result, task):
- host_name = result.get('_ansible_delegated_vars', {}).get('ansible_host', None)
+ host_name = result.get('_ansible_delegated_vars', {}).get('ansible_delegated_host', None)
if host_name is not None:
actual_host = self._inventory.get_host(host_name)
if actual_host is None:
diff --git a/lib/ansible/vars/__init__.py b/lib/ansible/vars/__init__.py
index 8e6f394458..2c02ab9c55 100644
--- a/lib/ansible/vars/__init__.py
+++ b/lib/ansible/vars/__init__.py
@@ -491,6 +491,7 @@ class VariableManager:
new_port = 5986
new_delegated_host_vars = dict(
+ ansible_delegated_host=delegated_host_name,
ansible_host=delegated_host_name,
ansible_port=new_port,
ansible_user=C.DEFAULT_REMOTE_USER,