在Ansible var文件中创建一个列表,并在play中调用所有项目以供参考

时间:2018-05-03 23:07:12

标签: networking ansible cisco ansible-inventory

抱歉,如果之前有人询问过。我看了一遍,似乎找不到任何东西。我对ansible /编码世界相对较新,所以如果我的术语不正确,我会提前道歉。

所以,我想获取一个IP地址列表,并将它们全部分配给一个变量。例如,编写一个model.compile(loss='mean_squared_error', optimizer='adam') 文件,创建一个变量,并为一个变量调用一堆项。

host_var

然后,在playbook中,我想运行一个命令,并将该命令的输出与该prefixes: - 192.168.1.1/24 - 192.168.1.2/24 - 192.168.1.3/24 变量中的每一行进行比较。

这可能吗?怎么做?如果是这样,您是否也可以将其限制在该变量中的特定项目?

谢谢!

1 个答案:

答案 0 :(得分:0)

您已在示例中定义了变量。

继续播放您的剧本并使用{{ with_items }}。另请阅读文档here

---
  - name: Test Playbook
    hosts: localhost
    gather_facts: false

    vars:
      prefixes:
        - 192.168.1.1/24
        - 192.168.1.2/24
        - 192.168.1.3/24

    tasks:
      - name: Debug prefixes
        debug:
          msg: "{{ item }}"
        with_items: "{{ prefixes }}"