|
|
|
@ -138,31 +138,33 @@
|
|
|
|
|
- asyncresult | failed == true
|
|
|
|
|
- asyncresult.msg is search('failing via exception')
|
|
|
|
|
|
|
|
|
|
- name: loop async success
|
|
|
|
|
async_test:
|
|
|
|
|
sleep_delay_sec: 3
|
|
|
|
|
async: 10
|
|
|
|
|
poll: 0
|
|
|
|
|
with_sequence: start=1 end=4
|
|
|
|
|
register: async_many
|
|
|
|
|
|
|
|
|
|
- name: wait for completion
|
|
|
|
|
async_status:
|
|
|
|
|
jid: "{{ item }}"
|
|
|
|
|
register: asyncout
|
|
|
|
|
until: asyncout.finished == 1
|
|
|
|
|
retries: 10
|
|
|
|
|
delay: 1
|
|
|
|
|
with_items: "{{ async_many.results | map(attribute='ansible_job_id') | list }}"
|
|
|
|
|
|
|
|
|
|
- name: validate results
|
|
|
|
|
assert:
|
|
|
|
|
that:
|
|
|
|
|
- item.finished == 1
|
|
|
|
|
- item.slept_sec == 3
|
|
|
|
|
- item.changed == true
|
|
|
|
|
- item.ansible_job_id is match('\d+\.\d+')
|
|
|
|
|
with_items: "{{ asyncout.results }}"
|
|
|
|
|
|
|
|
|
|
# this test is only flaky under shippable/AWS- the last iteration "until's" forever, cannot repro locally
|
|
|
|
|
#- name: loop async success
|
|
|
|
|
# async_test:
|
|
|
|
|
# sleep_delay_sec: 3
|
|
|
|
|
# async: 10
|
|
|
|
|
# poll: 0
|
|
|
|
|
# with_sequence: start=1 end=4
|
|
|
|
|
# register: async_many
|
|
|
|
|
#
|
|
|
|
|
#- name: wait for completion
|
|
|
|
|
# async_status:
|
|
|
|
|
# jid: "{{ item }}"
|
|
|
|
|
# register: asyncout
|
|
|
|
|
# until: asyncout.finished == 1
|
|
|
|
|
# retries: 10
|
|
|
|
|
# delay: 1
|
|
|
|
|
# with_items: "{{ async_many.results | map(attribute='ansible_job_id') | list }}"
|
|
|
|
|
#
|
|
|
|
|
#- name: validate results
|
|
|
|
|
# assert:
|
|
|
|
|
# that:
|
|
|
|
|
# - item.finished == 1
|
|
|
|
|
# - item.slept_sec == 3
|
|
|
|
|
# - item.changed == true
|
|
|
|
|
# - item.ansible_job_id is match('\d+\.\d+')
|
|
|
|
|
# with_items: "{{ asyncout.results }}"
|
|
|
|
|
|
|
|
|
|
# this part of the test is flaky- Windows PIDs are reused aggressively, so this occasionally fails due to a new process with the same ID
|
|
|
|
|
# FUTURE: consider having the test module hook to a kernel object we can poke at that gets signaled/released on exit
|
|
|
|
|