diff --git a/files/ansible-playbooks/sot-updater-wrapper.yml b/files/ansible-playbooks/sot-updater-wrapper.yml index 449d818..80bb639 100644 --- a/files/ansible-playbooks/sot-updater-wrapper.yml +++ b/files/ansible-playbooks/sot-updater-wrapper.yml @@ -18,7 +18,15 @@ vars: _lines: "{{ (nb_preflight.stdout_lines | default([])) | map('regex_replace','\r','') | map('trim') | list }}" _ok_line: "{{ (_lines | select('match','^OK\\s+') | list | last | default('')) }}" - _ip: "{{ _ok_line | regex_search('(?:^|\\s)ip=([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(?:\\s|$)', '\\1') | default('') }}" + _ip_raw: "{{ _ok_line | regex_search('(?:^|\\s)ip=([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)(?:\\s|$)', '\\1') | default('') }}" + _ip: >- + {%- if _ip_raw is string -%} + {{ _ip_raw }} + {%- elif _ip_raw is sequence and (_ip_raw | length) > 0 -%} + {{ _ip_raw[0] }} + {%- else -%} + "" + {%- endif -%} set_fact: wrapper_ok_line: "{{ _ok_line }}" wrapper_nb_ip: "{{ _ip | trim }}"