From 397e3409cb819fd60bcef30857519d9295d8c8d0 Mon Sep 17 00:00:00 2001 From: pavel Date: Fri, 24 Oct 2025 10:06:31 +0300 Subject: [PATCH] 1006 --- files/ansible-playbooks/sot-updater.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/files/ansible-playbooks/sot-updater.yml b/files/ansible-playbooks/sot-updater.yml index da77cf0..ccf5c38 100644 --- a/files/ansible-playbooks/sot-updater.yml +++ b/files/ansible-playbooks/sot-updater.yml @@ -49,14 +49,18 @@ msg: - "Dev1 banner raw: {{ (dev1_banner.stdout | default('') | trim) | regex_replace('\\n',' ') }}" - # Keep the agreed format EXACTLY "X.Y.Z rev NNNN" (no timestamp). - - name: Dev1 | Extract 'X.Y.Z rev NNNN' from banner (no timestamp) + # ***** FIXED: Strictly extract ONLY "X.Y.Z rev NNNN" from the banner ***** + # This grabs the first occurrence of ".. rev " + # and ignores any trailing timestamp like " | 2025-09-25 07:06:10". + - name: Dev1 | Extract exact 'X.Y.Z rev NNNN' (no timestamp) delegate_to: localhost set_fact: dev1_fw_clean: >- {{ - (dev1_banner.stdout | default('') | trim) - | regex_replace('^(.+?[Rr][Ee][Vv]\\.??\\s*[0-9]+).*$', '\\1') + ( + (dev1_banner.stdout | default('') | trim) + | regex_findall('([0-9]+\\.[0-9]+\\.[0-9]+\\s+[Rr][Ee][Vv]\\.??\\s*\\d+)') + ) | first | default('') }} - name: Dev1 | Debug normalized fw string to be published @@ -404,7 +408,7 @@ "inscope_device": (ansible_hostname | default(inventory_hostname)), "task_name": "custom_field_set", "task_add1": "indoor_fwver", - "task_result": indoor_fw_norm + "task_result': indoor_fw_norm } | to_json), "payload_encoding": "string" } | to_json