【发布时间】:2019-02-02 04:12:40
【问题描述】:
我希望能够将 ansible 主机的直接父级引用为变量。
以下面的清单为例:
[resourcegroup1]
host1
host2
[resourcegroup2]
host3
host4
[application:children]
[resourcegroup1]
[database:children]
[resourcegroup2]
[environoments:children]
[application]
[database]
[enivronoments]
dev
staging
prod
我想在可以引用主机父级的播放中运行循环任务。示例:
tasks:
- name: Start Datanbase Servers
with_items: "{{ groups['database'] }}"
azure_rm_virtualmachine:
name: "{{ item }}"
resource_group: "{{ item.parent }}"
started: yes
allocated: yes
{{ item }} 将遍历“host3”和“host4”的值,而我正在寻找可以代替{{ item.parent }} 作为主机直接父级的内容,在此案例:“resourcegroup2”。
有没有办法引用库存的层次结构?
【问题讨论】:
-
嗨@Drew,您感兴趣的功能很可能没有内置到 Ansible 中。通过了解库存的层次结构,您想完成什么?也许还有另一种方法可以解决您正在尝试做的事情。