【发布时间】:2019-12-28 23:05:31
【问题描述】:
我正在使用 Molecule 为我所有现有的 Ansible 角色添加测试。 我现有的 Ansible 剧本使用如下变量级别:
file: playbook_dir/group_vars/all
contents: global variables, applicable to all everything (hosts, inventories etc.)
file: playbook_dir/inventories/<inventory>/group_vars/all
contents: variables applicable to all hosts in this inventory.
file: playbook_dir/inventories/<inventory>/group_vars/<group>
contents: variables applicable only to this group.
在为我现有的角色设置 Molecule 时,我至少需要访问“全局变量”(我列表中的第一个),我设法通过添加链接来实现这一点,如下所示:
provisioner:
name: ansible
inventory:
links:
group_vars: ../../../../group_vars # These are the 'global' group_vars as described above.
到目前为止一切都很好,对。但是,有几个角色需要设置不属于“全局”组变量的变量;即库存特定的。 我发现:
- 这些链接只允许建立一个链接,因此链接到多个 group_vars 似乎不是一种选择。
- inventory.links.group_vars 和inventory.group_vars 是互斥的。
我的问题:如何重复使用现有的“全局变量”,以及 a) 使用现有库存特定 group_vars,或 b) 定义库存特定 group_vars?
【问题讨论】:
标签: molecule