Я хотел бы сделать мой Ansible EIP создание идемпотентным.Для этого я хочу, чтобы задача выполнялась только в том случае, если для тега «Имя» значение «тег_1» не существует.Однако я не уверен, как я мог бы добавить это как «когда» в конце задачи.
"eip_facts.addresses": [
{
"allocation_id": "eipalloc-blablah1",
"domain": "vpc",
"public_ip": "11.11.11.11",
"tags": {
"Name": "tag_1",
}
},
{
"allocation_id": "eipalloc-blablah2",
"domain": "vpc",
"public_ip": "22.22.22.22",
"tags": {
"Name": "tag_2",
}
},
{
"allocation_id": "eipalloc-blablah3",
"domain": "vpc",
"public_ip": "33.33.33.33",
"tags": {
"Name": "tag_3",
}
}
]
(Теги добавляются позже) Я ищу что-то вроде:
- name: create elastic ip
ec2_eip:
region: eu-west-1
in_vpc: yes
when: eip_facts.addresses[].tags.Name = "tag_1" is not defined
Как правильно достичь этого?Помните, что значение не может существовать в этом параметре во всем массиве, а не в одной итерации.