У меня есть список словарей в переменной ansible. Некоторые словари имеют одно и то же значение в поле 'id
и поле 'name'
, в то время как они отличаются в других парах значений ключа (что для меня не важно). Я хочу отфильтровать все эти словари, которые являются «дубликатами» относительно полей 'name'
и 'id'
.
Пример:
[{
"name": "abc",
"id": "123456",
"other_key": "unimportant value"
},
{
"name": "abc",
"id": "123456",
"other_key": "another unimportant value"
},
{
"name": "bcd",
"id": "789012",
"other_key": "unimportant value"
}]
Желаемый результат:
[{
"name": "abc",
"id": "123456"
},
{
"name": "bcd",
"id": "789012"
}]
Как мне добиться этого в Ansible? (переменная 'other_key'
не обязательно должна быть отброшена, это также может быть, например, только первое вхождение, это просто не имеет значения).
Я уже создал список уникальных идентификаторов с:
{{ mydictionaries | map(attribute='id') | unique | list }}
Но как с этим отфильтровать список словарей?