0

我写这个:

- name: test for seed
  debug:
    var: hostvars|json_query("*.ansible_host")

它打印每个主机。但这不会过滤主机:

- name: test for seed
  debug:
    var: hostvars|json_query("*[?ansible_host=='192.168.56.101']")

它只是打印一个空列表,而我确定该主机存在。这是相关的库存行:

[build-servers]
build-server ansible_host=192.168.56.101

难道我做错了什么?

4

1 回答 1

3

您应该过滤结果列表,而不是原始哈希:* | [?ansible_host=='192.168.168.21']

PS你通常不想使用模块var选项debug来打印Jinja语句,msg而是使用。

于 2017-07-25T08:25:31.470 回答