我正在尝试获取本地主机的ipv4地址,并尝试在将其用作变量之前进行测试,这是我的j2模板
ansible localhost -m setup -a 'filter=ansible_default_ipv4.address'
此命令的输出为
localhost | SUCCESS => {
"ansible_facts": {},
"changed": false
}
所以它是空的。为什么?是不是有什么bug?
发布于 2018-06-06 18:43:00
一个事实(在filter
参数中使用的值)是ansible_default_ipv4
。它是一个字典,包含一个关键的address
。
没有办法对值进行筛选,因此需要使用:
ansible localhost -m setup -a 'filter=ansible_default_ipv4'
发布于 2020-07-05 09:16:34
帮我试试这个即席ansible设置模块过滤器,它起作用了。
$ ansible dev -m setup -a 'filter=ansible_all_ipv4_addresses'
node1.example.com | SUCCESS => {
"ansible_facts": {
"ansible_all_ipv4_addresses": [
"10.160.12.13"
],
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": false
}
https://stackoverflow.com/questions/50726662
复制