我有两个Ansible项目。一个包含常见角色和剧本,第二个剧本,特定于客户的角色,包括库存。
我希望能够使用第二个项目中的库存来运行常用的剧本
ansible-playbook -vvvv -s -K -i \
~/inventory/hosts/staging.int.openbet.com site.yml
~/inventory >
.
├── group_vars
│ └── all
├── hosts
│ └── staging.int.openbet.com
└── host_vars
└── staging.int.openbet.com
这会正确地针对主机运行,但不会拾取host_vars。我原本期望host_vars和group_vars相对于库存文件,但这似乎不会发生。
http://docs.ansible.com/intro_inventory.html#splitting-out-host-and-group-specific-data
提示:在Ansible 1.2或更高版本中,group_vars /和host_vars /目录可以存在于playbook目录或inventory目录中。如果两个路径都存在,则第二个将加载playbook目录中的变量。
任何最感谢的帮助,我正在运行1.7
答案 0 :(得分:0)
您需要在第一个项目的ansible.cfg中定义清单文件路径,在该目录中,您将定义第二个项目中的清单路径。
示例:
inventory = ./_inventory/hosts.ini