我有一个非常基本的ansible剧本,可以创建一个ENI:
---
- name: create ENIs
hosts: localhost
tasks:
- name: create eni 1
ec2_eni:
subnet_id: subnet-xxxxxxx
region: us-east-1
description: my-eni
state: present
我想要做的是当我重新运行这个剧本时,它不会创建新的ENI,而是验证创建并存在的ENI。
我无法传递Private IP
地址,因为我希望在我们拥有的多个帐户中重复使用该地址。
是否可以这样做?
这是我正在使用的ENI模块:
答案 0 :(得分:1)
假设ENI描述是唯一的(非常重要的假设):
tasks:
- ec2_eni_facts:
region: us-east-1
filters:
description: my-eni
register: eni_facts
- name: create eni 1 if not presemt
ec2_eni:
subnet_id: subnet-xxxxxxx
region: us-east-1
description: my-eni
state: present
when: not eni_facts.interfaces