我有一个主机组 my_hosts
的剧本[my_hosts]
host1
host2
host3
我还有一个json文件 data.json ,与我的playbook位于同一目录中:
{
"host1": "1.1.1.1",
"host2": "1.1.1.2",
"host3": "1.1.1.3"
}
我想要一个playbook来使用主机文件,如果主机与json文件中的主机密钥匹配,则打印IP。即当host = host1时,打印出“1.1.1.1”。
我的剧本的开头是这样的:
---
- name: Check IP
hosts: my_hosts
connection: local
vars:
version_file: "{{ lookup('file', 'data.json') | from_json }}"
tasks:
- name: Get IP
这在Ansible中是否可行?
答案 0 :(得分:1)
为什么不试试呢?
- debug:
msg: "{{ version_file[inventory_hostname] }}"