我有这个示例 yaml 文件(haproxy.yml):
---
rules:
aa:
PHP53:
- url: php53-1-aa.my-example.com
PHP55:
- url: php55-1-aa.my-example.com
PHP56:
- url: php56-1-aa.my-example.com
- url: php56-2-aa.my-example.com
- url: php56-3-aa.my-example.com
PHP72:
- url: php72-1-aa.my-example.com
- url: php72-2-aa.my-example.com
- url: php72-3-aa.my-example.com
bb:
PHP53:
- url: php53-1-bb.my-example.com
- url: php53-2-bb.my-example.com
- url: php53-3-bb.my-example.com
PHP55:
- url: php55-1-bb.my-example.com
PHP56:
- url: php56-1-bb.my-example.com
- url: php56-2-bb.my-example.com
- url: php56-3-bb.my-example.com
PHP72:
- url: php72-1-bb.my-example.com
- url: php72-2-bb.my-example.com
- url: php72-3-bb.my-example.com
cc:
PHP55:
- url: php55-1-cc.my-example.com
PHP56:
- url: php56-1-cc.my-example.com
- url: php56-2-cc.my-example.com
- url: php56-3-cc.my-example.com
...
我使用这个剧本来加载这个文件:
---
- name: 'stack-example'
hosts: localhost
gather_facts: no
tasks:
- name: 'include'
include_vars:
file: 'haproxy.yml'
- set_fact:
try: '{{ try|default({}) | combine(item.value) }}'
loop: '{{ lookup("dict", rules) }}'
- debug:
var: try
所有文件都是两个解释并重现我的问题:-)
我需要使用set_fact
处理我的变量。
我的主要目标是将所有 PHP** 合并/分组为一组。
这是我需要的一个例子,我尝试了很多东西combine
map
lookup
但没有任何结果能给我带来我期望的结果。
我尝试这样做:
{
"PHP53": [
{ "url": "php53-1-aa.my-example.com" },
{ "url": "php53-1-bb.my-example.com" },
{ "url": "php53-2-bb.my-example.com" },
{ "url": "php53-3-bb.my-example.com" }
],
"PHP55": [
{ "url": "php55-1-aa.my-example.com" },
{ "url": "php55-1-bb.my-example.com" },
{ "url": "php55-1-cc.my-example.com" }
],
"PHP56": [
{ "url": "php56-1-aa.my-example.com" },
{ "url": "php56-2-aa.my-example.com" },
{ "url": "php56-3-aa.my-example.com" },
{ "url": "php56-1-bb.my-example.com" },
{ "url": "php56-2-bb.my-example.com" },
{ "url": "php56-3-bb.my-example.com" },
{ "url": "php56-1-cc.my-example.com" },
{ "url": "php56-2-cc.my-example.com" },
{ "url": "php56-3-cc.my-example.com" },
],
"PHP72": [
{ "url": "php72-1-aa.my-example.com" },
{ "url": "php72-2-aa.my-example.com" },
{ "url": "php72-3-aa.my-example.com" },
{ "url": "php72-1-bb.my-example.com" },
{ "url": "php72-2-bb.my-example.com" },
{ "url": "php72-3-bb.my-example.com" }
]
}
如果有人有想法这样做?
非常感谢你的帮助
此致