Here is my code in which i am able to get complete output as below.
<!-- language: lang-yaml -->
- name: Upgrade NX Appliance using ansible_cli
gather_facts: false
become: false
hosts: all
vars:
image_name: 'image-wmps.9****img' #
- name: Check for latest image in the NX appliance
raw: cli "show fenet metadata status"
register: imageInfo
- set_fact:
image_out: "{{ imageInfo.stdout | regex_search(image_name) | string }}"
- debug:
msg: ' Available Image for Upgrade {{ image_out }}'
После того, как я внес изменения в приведенный выше код, теперь мой результат:
"msg": " Available Image for Upgrade image-wmps_9.*********.img"
(Исходный результат указанной выше команды RAW, как показано ниже)
********* (config) # show fenet image list
Download time Size Image Name
------------- ---- ----------
2020/05/03 00:49:59 1062010770 image-wmps_8.*********.img
2020/07/21 13:01:48 1104601905 image-wmps_9.*********.img
Если я упоминаю точный имя изображения в Vars как "image_name" "'image-wmps.9 **** img'" я мог видеть (image_out: "{{imageInfo.stdout | regex_search (image_name) | string) поиск reg_ex может сравнить это значение в выводе, и если какое-либо значение совпадает с таким же, я получаю вывод в качестве имени моего изображения, вместо этого он говорит, что нет, если оно не совпадает. Но я не смог получить имя изображения, прочитав строку вывода, так как я начинаю Ansible, так как последние пару раз в неделю я не могу создать точный синтаксис, который необходим. Может ли кто-нибудь помочь мне отфильтровать мой вывод только имени изображения без ручного указания в VARS.