forked from jakub/ansible
Update mikrotikbackup_clean.yml
This commit is contained in:
@@ -65,28 +65,41 @@
|
|||||||
register: update_check
|
register: update_check
|
||||||
tags: [upgrade, never]
|
tags: [upgrade, never]
|
||||||
|
|
||||||
# 👉 FIX: separate normalization step
|
|
||||||
- name: Normalize update output
|
- name: Normalize update output
|
||||||
set_fact:
|
set_fact:
|
||||||
_update_text: "{{ update_check.stdout[0] | replace('\r', '') }}"
|
_update_text: "{{ update_check.stdout[0] | replace('\r', '') }}"
|
||||||
tags: [upgrade, never]
|
tags: [upgrade, never]
|
||||||
|
|
||||||
|
# ⬇️ Add this to see exactly what RouterOS returns before parsing
|
||||||
|
- name: Debug raw update output
|
||||||
|
ansible.builtin.debug:
|
||||||
|
msg: "{{ _update_text }}"
|
||||||
|
tags: [upgrade, never]
|
||||||
|
|
||||||
- name: Parse installed and latest versions
|
- name: Parse installed and latest versions
|
||||||
set_fact:
|
set_fact:
|
||||||
installed_version: >-
|
installed_version: >-
|
||||||
{{
|
{{
|
||||||
(_update_text | regex_findall('installed-version:\\s*([0-9A-Za-z.]+)'))[0]
|
(_update_text | regex_findall('(?:installed|current)-version:[ ]*([0-9A-Za-z.]+)'))[0]
|
||||||
if (_update_text | regex_findall('installed-version:\\s*([0-9A-Za-z.]+)'))
|
if (_update_text | regex_findall('(?:installed|current)-version:[ ]*([0-9A-Za-z.]+)'))
|
||||||
else 'unknown'
|
else 'unknown'
|
||||||
}}
|
}}
|
||||||
latest_version: >-
|
latest_version: >-
|
||||||
{{
|
{{
|
||||||
(_update_text | regex_findall('latest-version:\\s*([0-9A-Za-z.]+)'))[0]
|
(_update_text | regex_findall('(?:latest|newest)-version:[ ]*([0-9A-Za-z.]+)'))[0]
|
||||||
if (_update_text | regex_findall('latest-version:\\s*([0-9A-Za-z.]+)'))
|
if (_update_text | regex_findall('(?:latest|newest)-version:[ ]*([0-9A-Za-z.]+)'))
|
||||||
else 'unknown'
|
else 'unknown'
|
||||||
}}
|
}}
|
||||||
tags: [upgrade, never]
|
tags: [upgrade, never]
|
||||||
|
|
||||||
|
- name: Fail if versions could not be parsed
|
||||||
|
ansible.builtin.fail:
|
||||||
|
msg: >
|
||||||
|
Could not parse versions from update output.
|
||||||
|
Raw text was: {{ _update_text }}
|
||||||
|
when: installed_version == 'unknown' or latest_version == 'unknown'
|
||||||
|
tags: [upgrade, never]
|
||||||
|
|
||||||
- name: Debug parsed versions
|
- name: Debug parsed versions
|
||||||
ansible.builtin.debug:
|
ansible.builtin.debug:
|
||||||
msg:
|
msg:
|
||||||
|
|||||||
Reference in New Issue
Block a user