Я пытаюсь создать несколько IP-адресов AWS Elastic на основе количества в переменной - до этого все хорошо. НО мне нужно проверить, существует ли этот EIP в наборе переменных, которые я загрузил из файла. Если EIP существует, я хочу пропустить его создание,
например:
- set_fact: "number_of_ips=3
- name: load the local config file
include_vars: profiles/{{ ec2_tag_environment }}/file_with_variables
- name: allocate a new elastic IP for server {{ item }} if not exists already
ec2_eip:
profile: "{{ boto_profile }}"
region: "{{ ec2_region }}"
state: present
register: reg_eip_server_{{ item }}
when: server_eip_{{ item }} is not defined
with_sequence: start=1 end={{ number_of_ips}}
(пожалуйста, не берите в голову отступ - он работает, но здесь может быть проблема копирования / вставки)
В строке «когда» я получаю предупреждение, и, конечно, он не работает, если я пытаюсь использовать reg_eip_server_1.public_ip
, поскольку его не существует
Вот вопросы :
- Возможно ли это сделать?
- Как я могу взять публичный IP-адрес элемента и использовать его на следующем шаге?
- Как я могу использовать условие, чтобы пропустить элемент, когда я использую этот тип счета?