cloudformation_facts - Получение фактов о стеке AWS CloudFormation
Новая версия с 2.2.
Обзор
- Получает информацию о стеке AWS CloudFormation
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- boto
- boto3 >= 1.0.0
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| all_facts | Значение по умолчанию: "нет" | Получить всю информацию о стеке. |
| aws_access_key | Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Псевдонимы: ec2_access_key, access_key | |
| aws_secret_key | Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Псевдонимы: ec2_secret_key, secret_key | |
| ec2_url | URL для подключения к облаку EC2 или Eucalyptus (по умолчанию используются конечные точки EC2). Игнорируется в модулях, где регион обязателен. Должен быть указан во всех остальных модулях, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL. | |
| profile (добавлен в 1.6) | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| region | Регион AWS. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | |
| security_token (добавлен в 1.6) | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Псевдонимы: access_token | |
| stack_events | Значение по умолчанию: "нет" | Получить события стека. |
| stack_name | Имя или идентификатор стека CloudFormation. По умолчанию собирает факты для всех стеков. | |
| stack_policy | Значение по умолчанию: "нет" | Получить политику стека. |
| stack_resources | Значение по умолчанию: "нет" | Получить ресурсы стека. |
| stack_template | Значение по умолчанию: "нет" | Получить тело шаблона стека. |
| validate_certs bool (добавлен в 1.5) |
| При значении "нет" сертификаты SSL не будут проверены для версий boto >= 2.6.0. |
Примечания
Примечание
- Если параметры не заданы в модуле, могут использоваться следующие переменные окружения в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_ACCESS_KEY_IDилиAWS_ACCESS_KEYилиEC2_ACCESS_KEY,AWS_SECRET_ACCESS_KEYилиAWS_SECRET_KEYилиEC2_SECRET_KEY,AWS_SECURITY_TOKENилиEC2_SECURITY_TOKEN,AWS_REGIONилиEC2_REGION - Ansible использует конфигурационный файл boto (обычно ~/.boto), если учетные данные не предоставлены. См. http://boto.readthedocs.org/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно используются для указания региона AWS, когда это необходимо, но его также можно настроить в конфигурационном файле boto
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
# Get summary information about a stack
- cloudformation_facts:
stack_name: my-cloudformation-stack
# Facts are published in ansible_facts['cloudformation'][<stack_name>]
- debug:
msg: "{{ ansible_facts['cloudformation']['my-cloudformation-stack'] }}"
# Get stack outputs, when you have the stack name available as a fact
- set_fact:
stack_name: my-awesome-stack
- cloudformation_facts:
stack_name: "{{ stack_name }}"
register: my_stack
- debug:
msg: "{{ my_stack.ansible_facts.cloudformation[stack_name].stack_outputs }}"
# Get all stack information about a stack
- cloudformation_facts:
stack_name: my-cloudformation-stack
all_facts: true
# Get stack resource and stack policy information about a stack
- cloudformation_facts:
stack_name: my-cloudformation-stack
stack_resources: true
stack_policy: true
# Fail if the stack doesn't exist
- name: try to get facts about a stack but fail if it doesn't exist
cloudformation_facts:
stack_name: nonexistent-stack
all_facts: yes
failed_when: cloudformation['nonexistent-stack'] is undefined
# Example dictionary outputs for stack_outputs, stack_parameters and stack_resources:
# "stack_outputs": {
# "ApplicationDatabaseName": "dazvlpr01xj55a.ap-southeast-2.rds.amazonaws.com",
# ...
# },
# "stack_parameters": {
# "DatabaseEngine": "mysql",
# "DatabasePassword": "****",
# ...
# },
# "stack_resources": {
# "AutoscalingGroup": "dev-someapp-AutoscalingGroup-1SKEXXBCAN0S7",
# "AutoscalingSecurityGroup": "sg-abcd1234",
# "ApplicationDatabase": "dazvlpr01xj55a",
# "EcsTaskDefinition": "arn:aws:ecs:ap-southeast-2:123456789:task-definition/dev-someapp-EcsTaskDefinition-1F2VM9QB0I7K9:1"
# ...
# }
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| stack_description dict | если стек существует | Сводные данные о стеке |
| stack_events list | только если all_facts или stack_events истинны и стек существует | Все события стека |
| stack_outputs dict | если стек существует | Словарь выходных данных стека, индексированный по значениям параметра 'OutputKey' и соответствующим значениям параметра 'OutputValue' |
| stack_parameters dict | если стек существует | Словарь параметров стека, индексированный по значениям параметра 'ParameterKey' и соответствующим значениям параметра 'ParameterValue' |
| stack_policy dict | только если all_facts или stack_policy истинны и стек существует | Описание политики стека |
| stack_resource_list list | только если all_facts или stack_resourses истинны и стек существует | Описание ресурсов стека |
| stack_resources dict | только если all_facts или stack_resourses истинны и стек существует | Словарь ресурсов стека, индексированный по значениям параметра 'LogicalResourceId' и соответствующим значениям параметра 'PhysicalResourceId' |
| stack_template dict | только если all_facts или stack_template истинны и стек существует | Описание шаблона стека |
Статус
Этот модуль помечен как превью, что означает, что его интерфейс не гарантируется как обратная совместимость.
Техническое обслуживание
Этот модуль помечен как сообщество, что означает, что он поддерживается сообществом Ansible. См. Поддержка модулей и технического обслуживания для получения дополнительной информации.
Список других модулей, также поддерживаемых сообществом Ansible, см. в здесь.
Автор
- Justin Menga (@jmenga)
Подсказка
Если вы обнаружите проблемы в этой документации, вы можете отредактировать этот документ для его улучшения.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/modules/cloudformation_facts_module.html