2015-03-05 2 views
1

У меня есть учебник, который создает AWS ELB и AWS ASG.Как условно запустить задачу, если была создана другая задача?

Я только хочу создать ASG, если задача ELB СОЗДАЕТ (не обновляет) ELB.

Это очень похоже на этот вопрос: Ansible - only run a series of tasks if a precondition is met Чье решение зарегистрировать переменную с результатом, а затем использовать «когда» заявление, но в этом случае результат задачи УДР то же самое на создание И обновление.

Я не хочу создавать ASG при обновлении ELB ... Я только хочу создать ASG, если ELB был создан, поэтому я не могу отличить создание от обновления.

Вдумчивый, я мог бы написать сценарий, чтобы ответить на этот вопрос (например, запрос AWS, чтобы увидеть, когда был создан ELB), но я надеюсь, что смогу сделать это через Ansible.

Любые идеи?

+1

Что вы получите, если вы зарегистрируетесь на выходе и отправить его через debug с помощью 'register_var .__ dict__'? –

ответ

0
  1. Проверить наличие УДРО -> регистра переменные $
  2. Установить/Обновить ELB
  3. Создание ASG в зависимости от выхода $ переменного
+0

Но шаг 1 возвращает то же значение в переменной $, независимо от того, создано ли оно или обновлено. Я закончил тем, что использовал unsible для оболочки сценария, который делает эту часть для меня. – grayaii

+0

Конечно, вы не должны использовать проверку, которая дает одинаковый результат в обоих случаях. Эта проверка должна проверяться на существование, так что она только дает «отсутствие существования» в первом прогоне. Например, проверьте, присутствует ли файл или нет. – t2d

Смежные вопросы