I would like to know how to loop over multiple tasks until condition is met.
#main.yml
  - set_fact:
      num: 1
      req_num: 10
  - name:  Start to unregister entities
    include_tasks: output.yml
    loop: "{{ range(num, req_num + 1)|list }}"
#output.yml
  - name: get status
    raw: cat /tmp/output
    register: rawoutput
  - name: copy to localhost
    copy:
      content: "{{rawoutput.stdout}}"
      dest: /tmp/output1
    delegate_to: localhost
  - name: reg output2
    shell: awk something /tmp/output1 |awk '/something/,0' |head -n something |tail -n something > /tmp/output2 ; cat /tmp/output2
    register: output2
    delegate_to: localhost
  - name: compare output2
    debug:
      msg: "{{item}}"
    with_items: "{{ output2.stdout_lines }}"
    until: item == "Synced"
    retries: 2
    delay: 2
#cat /tmp/output2
Synced
Syncing
Synced
Failed
I am using this, but the playbook quits when the subtask fail.
My goal is to make sure all the content from output2 is "Synced", loop output.yml until the result is "Synced", or failed after x attempts.
Appreciate if there is better way of doing this. thanks Thanks
