我们可以通过修改roles_path
中的ansible.cfg
来更改角色的路径。
但该文件似乎没有提及有关更改group_vars
和host_vars
路径的任何内容。
如何更改这些路径?
我将与ansible相关的文件与rails app repsitory集成。
我想在单个目录下收集角色和vars目录,但是将hosts文件和ansible.cfg保留在顶层目录中,这样顶层目录很容易看到,我仍然可以在顶层目录运行ansible-playbook
而无需移动到深层目录。
提前谢谢。
答案 0 :(得分:15)
您无法更改host_vars
或group_vars
的路径。
这些路径始终与您的hostfile
相关。您可以在ansible配置中设置标准主机文件:
hostfile = /path/to/hostfile/hostfile.ini
在这种情况下,您可以在
找到默认的host_vars
/path/to/hostfile/host_vars/
您可以使用多个主机文件,假设您有:
/path/to/your/project/inventory/inventory.ini
使用host_vars
/path/to/your/project/inventory/host_vars/
在这种情况下,您可以使用以下方式从任何地方调用ansible:
ansible -i /path/to/your/project/inventory/inventory.ini my_playbook.yml
请记住:host_vars
和group_vars
与您的inventory (hostfile)
相关,因此您可以更改inventory
位置并将相应的host_vars
置于其下方