我是Ansible的新手,这是我第一次尝试它。我有一项任务是从consul节点端点检索属性Address。我的游戏看起来如下
我用 json_query 解析JSON响应(查询语法取决于您的JSON,语法 这里 ):
json_query
- name: set facts set_fact: frontendip: "{{item.ip}}" loop: "{{facts_var | json_query(fquery)}}" vars: fquery: "Nodes[*].{ip: Address, Nodename: Node}" when: "'hero-node' in item.Nodename"
下面是过滤器,它为您提供与“hero-node *”匹配的节点的地址列表
- debug: msg: "{{ nodes|selectattr('Node', 'match', 'hero-node*')|map(attribute='Address')|list}}"