diff --git a/files/ansible-playbooks/sot-updater-upgradecmd.yml b/files/ansible-playbooks/sot-updater-upgradecmd.yml index d6c8774..d59a8ec 100644 --- a/files/ansible-playbooks/sot-updater-upgradecmd.yml +++ b/files/ansible-playbooks/sot-updater-upgradecmd.yml @@ -117,10 +117,14 @@ up_line: >- {{ ( - (nb_preflight.stdout | default('') | regex_replace('\r','')) | split('\n') | map('trim') - ) | select('match', '^NB:\\s+upgrade_cmd=') | list | last | default('') + (nb_preflight.stdout | default('') | regex_replace('\r','')) + | split('\n') | map('trim') + ) + | select('search', '^NB:\\s+upgrade_cmd=') + | list | last | default('') }} up_val_raw: "{{ up_line | regex_replace('^NB:\\s+upgrade_cmd=', '') | trim }}" + # Normalize None/null/empty to '' ; otherwise keep verbatim up_val_clean: >- {{ '' if (up_val_raw | lower) in ['none', 'null', ''] else up_val_raw @@ -128,6 +132,15 @@ set_fact: nb_upgrade_cmd: "{{ up_val_clean }}" + - name: "NB preflight | Debug upgrade_cmd" + when: nb_script.stat.exists + delegate_to: localhost + ansible.builtin.debug: + msg: + - "upgrade_cmd line: {{ up_line | default('') }}" + - "upgrade_cmd parsed: '{{ nb_upgrade_cmd | default('') }}' (len={{ (nb_upgrade_cmd | default('')) | length }})" + + # --- Detect "cloud vs NetBox (before update) was different" (regex-free, robust) - name: "NB preflight | Detect whether IP changed (pre-update)" when: nb_script.stat.exists