Ansible playbook在临时文件夹中控制事实

时间:2017-09-29 08:21:22

标签: ansible ansible-inventory ansible-facts

有一个有用的ansible命令可以收集事实并存储它们,就像这样,

ansible -m setup --tree out/ all

但是如何通过ansible-playbook -i inventory.ini来做到这一点?只是存储事实,但实际上并没有运行剧本,仅用于诊断。

由于 詹姆斯。

1 个答案:

答案 0 :(得分:0)

非常奇怪的请求,但是......

要仅执行游戏手册中的事实收集部分,您可以使用不存在的标记执行它:

ansible-playbook -i inventory.ini -vv -t zzzz myplaybook.yml

这会将收集的事实转储到stdout。

如果要将其存储到文件中,您应该执行以下操作:

ANSIBLE_STDOUT_CALLBACK=json \
  ansible-playbook -i inventory.ini -t zzzz myplaybook.yml 2>/dev/null \
  | jq '.plays[].tasks[].hosts[]' > tmp_hosts_facts