summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJordan Borean <jborean93@gmail.com>2020-07-24 10:48:45 +1000
committerGitHub <noreply@github.com>2020-07-23 19:48:45 -0500
commite9c9c02e0a8deaa8382ba6393c7a5ca09b13167d (patch)
tree16d882138887b0c9aa577618c570cf90d8416def
parent6dd05dfe67bd25eff81a9500ae0f28db81c00363 (diff)
downloadansible-e9c9c02e0a8deaa8382ba6393c7a5ca09b13167d.tar.gz
Do not add connection vars to the output results (#70853) (#70855)
* Do not add connection vars to the output results * Also revert the delgated scenario JIC * Added regression test (cherry picked from commit 5e1a9689837d404fd9d2db3429acf499cf1a3d2b)
-rw-r--r--changelogs/fragments/set_fact-connection_vars.yml2
-rw-r--r--lib/ansible/executor/task_executor.py9
-rwxr-xr-xtest/integration/targets/connection/test.sh13
3 files changed, 17 insertions, 7 deletions
diff --git a/changelogs/fragments/set_fact-connection_vars.yml b/changelogs/fragments/set_fact-connection_vars.yml
new file mode 100644
index 0000000000..0dd2ac43ed
--- /dev/null
+++ b/changelogs/fragments/set_fact-connection_vars.yml
@@ -0,0 +1,2 @@
+bugfixes:
+- Stop adding the connection variables to the output results
diff --git a/lib/ansible/executor/task_executor.py b/lib/ansible/executor/task_executor.py
index bd44f10ec2..63b1a7b4ca 100644
--- a/lib/ansible/executor/task_executor.py
+++ b/lib/ansible/executor/task_executor.py
@@ -798,13 +798,8 @@ class TaskExecutor:
# also now add conneciton vars results when delegating
if self._task.delegate_to:
result["_ansible_delegated_vars"] = {'ansible_delegated_host': self._task.delegate_to}
- for k in plugin_vars + RETURN_VARS:
- if k in cvars and cvars[k] is not None:
- result["_ansible_delegated_vars"][k] = cvars[k]
- else:
- for k in plugin_vars + RETURN_VARS:
- if k in cvars and cvars[k] is not None:
- result[k] = cvars[k]
+ for k in plugin_vars:
+ result["_ansible_delegated_vars"][k] = cvars.get(k)
# and return
display.debug("attempt loop complete, returning result")
diff --git a/test/integration/targets/connection/test.sh b/test/integration/targets/connection/test.sh
index 4e7aa8dda1..18fb2b776f 100755
--- a/test/integration/targets/connection/test.sh
+++ b/test/integration/targets/connection/test.sh
@@ -8,3 +8,16 @@ set -eux
ansible-playbook test_connection.yml -i "${INVENTORY}" "$@"
LC_ALL=C LANG=C ansible-playbook test_connection.yml -i "${INVENTORY}" "$@"
+
+# Check that connection vars do not appear in the output
+# https://github.com/ansible/ansible/pull/70853
+trap "rm out.txt" EXIT
+
+ansible all -i "${INVENTORY}" -m set_fact -a "testing=value" -v | tee out.txt
+if grep 'ansible_host' out.txt
+then
+ echo "FAILURE: Connection vars in output"
+ exit 1
+else
+ echo "SUCCESS: Connection vars not found"
+fi