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 336b3762b2
)
This commit is contained in:
parent
b3a1761365
commit
17830a01ba
2 changed files with 28 additions and 1 deletions
|
@ -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:
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue