知道为什么会这样吗?
undefined变量-错误是:'foo'未定义。我试过使用test。
test.yml
---
- hosts: all
roles:
- test
角色/测试/任务/main.yml
- name: test
debug:
msg: "{{ foo }}"
group_vars/test.vars
foo=bar
库存
[all]
localhost
ansible-playbook -i inventory --extra-vars group_vars/@test.vars test.yml
它们被称为group_vars,因为它们与主机组名称相关。
- 在目录文件和主剧本中,组名应该是
[test]
而不是[all]
。 - 变量文件名应与主机组名称相同,并采用YAML格式
test.yml
- 变量应该写在YAML
foo: bar
在这些更改之后,不需要在命令行上传递文件,因为ansible会自动检测它:
ansible-playbook -i inventory test.yml
我发现答案是移动@
外面,所以;它看起来像这样:
--extra-vars @group_vars/test.vars