summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Coca <brian.coca+git@gmail.com>2018-06-07 17:38:20 -0400
committerToshio Kuratomi <a.badger@gmail.com>2018-06-12 11:20:14 -0700
commit17830a01ba674f81692cb27535ef6670a1cb2cd6 (patch)
tree352ae343575fe5d0bc0883b62b6ff49ce0b9eb20
parentb3a1761365fdb7857a5581a955a9042e9e526d3f (diff)
downloadansible-17830a01ba674f81692cb27535ef6670a1cb2cd6.tar.gz
no_log even when task_result doesn't provide key
- now also checks task property - added reproducer to tests for unreachable status on item loop (cherry picked from commit 336b3762b23a64e355cfa3efba11ddf5bdd7f0d8)
-rw-r--r--lib/ansible/executor/task_result.py2
-rw-r--r--test/integration/targets/no_log/no_log_local.yml27
2 files changed, 28 insertions, 1 deletions
diff --git a/lib/ansible/executor/task_result.py b/lib/ansible/executor/task_result.py
index 0eb3032d9c..20806e76a7 100644
--- a/lib/ansible/executor/task_result.py
+++ b/lib/ansible/executor/task_result.py
@@ -104,7 +104,7 @@ class TaskResult:
else:
ignore = _IGNORE
- if self._result.get('_ansible_no_log', False):
+ if self._task.no_log or self._result.get('_ansible_no_log', False):
x = {"censored": "the output has been hidden due to the fact that 'no_log: true' was specified for this result"}
for preserve in _PRESERVE:
if preserve in self._result:
diff --git a/test/integration/targets/no_log/no_log_local.yml b/test/integration/targets/no_log/no_log_local.yml
index bf02468f22..69a55fdb4f 100644
--- a/test/integration/targets/no_log/no_log_local.yml
+++ b/test/integration/targets/no_log/no_log_local.yml
@@ -63,3 +63,30 @@
- name: args should be logged when task-level no_log overrides play-level
shell: echo "LOG_ME_OVERRIDE"
no_log: false
+
+ - name: Add a fake host for next play
+ add_host:
+ hostname: fake
+
+- name: use 'fake' unreachable host to force unreachable error
+ hosts: fake
+ gather_facts: no
+ connection: ssh
+ tasks:
+ - name: Fail to run a lineinfile task
+ vars:
+ logins:
+ - machine: foo
+ login: bar
+ password: DO_NOT_LOG_UNREACHABLE_ITEM
+ - machine: two
+ login: three
+ password: DO_NOT_LOG_UNREACHABLE_ITEM
+ lineinfile:
+ path: /dev/null
+ mode: 0600
+ create: true
+ insertafter: EOF
+ line: "machine {{ item.machine }} login {{ item.login }} password {{ item.password }}"
+ loop: "{{ logins }}"
+ no_log: true