从库存中读取数据的有效方式

时间:2016-07-27 03:32:01

标签: ansible ansible-playbook

如果脚本无法访问主机,那么从库存文件中读取主机变量的最佳方法是什么?我想先在这些机器上安装测试应用程序之前先创建一些虚拟机。因此,我想保留在同一个库存文件中创建虚拟机所需的参数,以便我可以使用相同的文件来创建虚拟机并在这些机器上安装我们的测试产品。库存将如下所示:

[testmachines1]
host1 vm=vmname1 description=vm1description
host2 vm=vmname2 description=vm2description

[testmachines2]
host3 vm=vmname3 description=vm3description
host4 vm=vmname4 description=vm4description

创建虚拟机的脚本将无法访问主机,而是会读取参数并相应地创建虚拟机。

1 个答案:

答案 0 :(得分:0)

其中一种方法:

---
- hosts: localhost
  tasks:
    - debug: msg="VM={{ hostvars[item].vm }}, Desc={{ hostvars[item]. description }}"
      when: hostvars[item].vm is defined
      with_inventory_hostnames: all