状況があります。
ansible-playbook で json_query フィルターを使用しようとすると、次のエラーが返されます。
{"msg": "json_query フィルター プラグインの jmespath.search でエラーが発生しました:\n基数 10 の int() の無効なリテラル: '-'"}
これをreplace ('-','_')
フィルターで解決します。
これを解決する他の方法はありますか?
ここに完全なコード:
---
# tasks file for mpls-lsp
- name: Colete informações do protocolo osfp
junipernetworks.junos.junos_rpc:
rpc: get-ospf-neighbor-information
output: json
register:
_data
- name: Aplica as configurações padrão em RT-BRAS.*
ansible.builtin.debug:
var: item
loop: "{{ _data2 | json_query('ospf_neighbor_information[0].ospf_neighbor[*].neighbor_address[0].data') }}"
vars:
_data2: "{{ _data.output | replace ('-','_') }}"
when: "'device_roles_bras' in {{ group_names }}"