2016-11-16 2 views
1

У меня есть довольно основные анзибль пьес, который создает ENI:анзибль - ec2_eni повторное 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 Я использую:

http://docs.ansible.com/ansible/ec2_eni_module.html

+0

Хотите создать новую ENI каждый раз, когда вы запустить это? – helloV

+0

Нет. Это то, что он делает прямо сейчас, и я хочу этого избежать. – Asdfg

+0

Тогда как можно узнать, создавать ли ENI или нет? Если вы не передадите частный ip, нет способа узнать, создавать или пропускать. – helloV

ответ

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 
Смежные вопросы