Вызов плейбука / вызов роли, если некоторые теги указаны с некоторыми значениями - PullRequest
0 голосов
/ 09 июля 2020

Пожалуйста, найдите ниже мою Ansible роль и сценарий, который вызывает эту роль для развертывания облачного шаблона в учетной записи AWS:

файл main.yml роли patching-cf-ssm

 cat main.yml
---

- name: Check the mandatory parameters are provided
  assert:
    that:
      - ({{ variable_check }} is defined )
      - ({{ variable_check }} is not none )
      - ({{ variable_check }} | trim != '' )
  with_items:
    - Managed
    - Patching
  loop_control:
    loop_var: variable_check

- name: Check the environment variables are provided
  assert:
    that:
      - ({{ variable_check }} is defined )
      - ({{ variable_checl }} is not none )
      - ({{ variable_check }} | trim != '' )
  with_items:
    - aws_region
    - environment_type
    - assumed_role
  loop_control:
   loop_var: variable_check

# tasks file for patching-cf-ssm
- include_vars: "{{playbook_dir}}/vars/patching-config.yml" #Variable file for the below template (MaintenanceWindow.yml)

- name: create a cloudformation stack
  cloudformation:
    stack_name: "Melton-ansible-cloudformation"
    state: "present"
    disable_rollback: true
    template: "roles/patching-cf-ssm/files/MaintenanceWindow.yml"
  #environment:
    #AWS_ACCESS_KEY_ID: "{{ assumed_role.sts_creds.access_key }}"
    #AWS_SECRET_ACCESS_KEY: "{{ assumed_role.sts_creds.secret_key }}"
    #AWS_SECURITY_TOKEN: "{{ assumed_role.sts_creds.session_token }}"
  when: {{ Managed: false }} | {{ Patching: disabled }} | {{ Backup: disabled }}
  when: {{ Managed: false }} | {{ Patching: enabled }} | {{ Backup: disabled }}
  when: {{ Managed: true }} | {{ Patching: disabled }} | {{ Backup: disabled }}
...
pwd
ansible/playbooks/roles/patching-cf-ssm/tasks

и он вызывается в main.yml, как показано ниже

cat patching.yml
---
- hosts: localhost
  roles:
    - patching-cf-ssm

Проблема в том, что я НЕ хочу развертывать какой-либо шаблон CF, если выполняется одно из условий «когда».

Как мне go об этом?

Пожалуйста, помогите

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...