Я получил эту простую книгу, в которой я пытаюсь создать словарь из списка пар ключ / значение, используя фильтр combine
. Проблема в том, что он не работает при цикле по парам (я пробовал l oop, with_dict, with_items).
- name: test jinja2 combine filter
hosts: localhost
- name: test combine
vars:
x: {'three', 3}
set_fact:
x: "{{ x | combine(item) }}"
with_items: [{'one': 1},{'two': 2}]
# I am expecting to see the two new dicts here,
# but only the last one in the list is added
- name: print x
debug: msg={{ x }}
Ожидаемый результат:
ok: [localhost] => {
"msg": {
"three": 3,
"one": 1,
"two": 2
}
}
Мой результат:
ok: [localhost] => {
"msg": {
"three": 3,
"two": 2
}
}
Начиная с этого сообщения, кажется, что не существует готового решения для такого рода проблемы. Хотя написать собственный плагин не составит труда, мне все еще интересно, есть ли стандартное решение без написания плагина.