Properly send a skipped message for empty templated loop (#77945)

Fixes #77934
pull/77967/head
Martin Krizek 2 years ago committed by GitHub
parent 81351022d8
commit 058a69e6b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -0,0 +1,2 @@
bugfixes:
- "Properly send a skipped message when a list in a ``loop`` is empty and comes from a template (https://github.com/ansible/ansible/issues/77934)"

@ -114,13 +114,13 @@ class CallbackModule(CallbackBase):
if self._last_task_banner != result._task._uuid:
self._print_task_banner(result._task)
if result._task.loop and 'results' in result._result:
if result._task.loop is not None and 'results' in result._result:
self._process_items(result)
else:
msg = "skipping: [%s]" % result._host.get_name()
if self._run_is_verbose(result):
msg += " => %s" % self._dump_results(result._result)
self._display.display(msg, color=C.COLOR_SKIP)
msg = "skipping: [%s]" % result._host.get_name()
if self._run_is_verbose(result):
msg += " => %s" % self._dump_results(result._result)
self._display.display(msg, color=C.COLOR_SKIP)
def v2_runner_on_unreachable(self, result):
if self._last_task_banner != result._task._uuid:

@ -67,6 +67,17 @@ changed: [testhost]
TASK [replace] *****************************************************************
ok: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1)
skipping: [testhost] => (item=2)
skipping: [testhost]
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost]
@ -93,5 +104,5 @@ ok: [testhost] => {
}
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -70,6 +70,17 @@ changed: [testhost]
TASK [replace] *****************************************************************
ok: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1)
skipping: [testhost] => (item=2)
skipping: [testhost]
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost]
@ -96,5 +107,5 @@ ok: [testhost] => {
}
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -61,6 +61,17 @@ changed: [testhost]
TASK [replace] *****************************************************************
ok: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1)
skipping: [testhost] => (item=2)
skipping: [testhost]
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost]
@ -87,5 +98,5 @@ ok: [testhost] => {
}
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -53,6 +53,17 @@ TASK [replace] *****************************************************************
changed: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1)
skipping: [testhost] => (item=2)
skipping: [testhost]
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost]
@ -71,5 +82,5 @@ TASK [Include some tasks] ******************************************************
included: .../test/integration/targets/callback_default/include_me.yml for testhost => (item=1)
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -89,5 +89,5 @@ ok: [testhost] => {
}
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -67,5 +67,5 @@ TASK [Include some tasks] ******************************************************
included: .../test/integration/targets/callback_default/include_me.yml for testhost => (item=1)
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -68,6 +68,17 @@ changed: [testhost]
TASK [replace] *****************************************************************
ok: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost]
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1)
skipping: [testhost] => (item=2)
skipping: [testhost]
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost]
@ -93,5 +104,5 @@ ok: [testhost] =>
item: 1
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -188,6 +188,24 @@ ok: [testhost] =>
msg: 1 replacements made
rc: 0
TASK [debug] *******************************************************************
skipping: [testhost] =>
skipped_reason: No items in the list
TASK [debug] *******************************************************************
skipping: [testhost] =>
skipped_reason: No items in the list
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1) =>
ansible_loop_var: item
item: 1
skipping: [testhost] => (item=2) =>
ansible_loop_var: item
item: 2
skipping: [testhost] =>
msg: All items skipped
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost] =>
changed: true
@ -278,5 +296,5 @@ ok: [testhost] =>
item: 1
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -195,6 +195,24 @@ ok: [testhost] =>
msg: 1 replacements made
rc: 0
TASK [debug] *******************************************************************
skipping: [testhost] =>
skipped_reason: No items in the list
TASK [debug] *******************************************************************
skipping: [testhost] =>
skipped_reason: No items in the list
TASK [debug] *******************************************************************
skipping: [testhost] => (item=1) =>
ansible_loop_var: item
item: 1
skipping: [testhost] => (item=2) =>
ansible_loop_var: item
item: 2
skipping: [testhost] =>
msg: All items skipped
RUNNING HANDLER [Test handler 1] ***********************************************
changed: [testhost] =>
changed: true
@ -290,5 +308,5 @@ ok: [testhost] =>
item: 1
PLAY RECAP *********************************************************************
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=1 rescued=1 ignored=2
testhost : ok=19 changed=11 unreachable=0 failed=0 skipped=4 rescued=1 ignored=2

@ -78,6 +78,23 @@
diff: true
changed_when: false
- debug:
msg: "{{ item }}"
loop: []
- debug:
msg: "{{ item }}"
loop: "{{ empty_list }}"
vars:
empty_list: []
- debug:
msg: "{{ item }}"
when: False
loop:
- 1
- 2
handlers:
- name: Test handler 1
command: echo foo

Loading…
Cancel
Save