Fix bug in registered variables related to delegate_to changes

pull/11534/head
James Cammarata 10 years ago
parent f5baad4fb2
commit 27fcf1a4b5

@ -107,7 +107,7 @@ class ResultProcess(multiprocessing.Process):
# if this task is registering a result, do it now # if this task is registering a result, do it now
if result._task.register: if result._task.register:
self._send_result(('set_host_var', result._host, result._task, None, result._task.register, result._result)) self._send_result(('register_host_var', result._host, result._task.register, result._result))
# send callbacks, execute other options based on the result status # send callbacks, execute other options based on the result status
# FIXME: this should all be cleaned up and probably moved to a sub-function. # FIXME: this should all be cleaned up and probably moved to a sub-function.

@ -223,6 +223,14 @@ class StrategyBase:
if host not in self._notified_handlers[handler_name]: if host not in self._notified_handlers[handler_name]:
self._notified_handlers[handler_name].append(host) self._notified_handlers[handler_name].append(host)
elif result[0] == 'register_host_var':
# essentially the same as 'set_host_var' below, however we
# never follow the delegate_to value for registered vars
host = result[1]
var_name = result[2]
var_value = result[3]
self._variable_manager.set_host_variable(host, var_name, var_value)
elif result[0] in ('set_host_var', 'set_host_facts'): elif result[0] in ('set_host_var', 'set_host_facts'):
host = result[1] host = result[1]
task = result[2] task = result[2]

@ -44,7 +44,7 @@
- name: check what python version ansible is running on - name: check what python version ansible is running on
command: python -c 'import distutils.sysconfig ; print(distutils.sysconfig.get_python_version())' command: python -c 'import distutils.sysconfig ; print(distutils.sysconfig.get_python_version())'
register: pyver register: pyver
#delegate_to: localhost delegate_to: localhost
- name: copy known good into place - name: copy known good into place
copy: src=foo.txt dest={{output_dir}}/foo.txt copy: src=foo.txt dest={{output_dir}}/foo.txt

Loading…
Cancel
Save