如何将shell命令输出到ansible变量文件

时间:2015-07-21 23:27:51

标签: ansible ansible-playbook

我需要将defaults \ main.yml中的变量设置为:

eth1_ipaddress: {% /sbin/ifconfig eth0 | awk -F ' *|:' '/inet addr/{print $4}' %}

有没有办法实现这个目标? 我知道这可以使用shell和register模块来实现。但这不是我所关注的,因为我需要在设置变量值之前添加某些条件。

1 个答案:

答案 0 :(得分:1)

你可以使用这样的hostvars事实:

- hosts: whatever
  gather_facts: yes

确保您设置:

<field name="type">tree</field>

请参阅:http://docs.ansible.com/ansible/playbooks_variables.html#information-discovered-from-systems-facts