community.aws.lambda_event – Создаёт, обновляет или удаляет сопоставления событий функции AWS Lambda
Примечание
Этот плагин входит в состав коллекции community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в playbook укажите: community.aws.lambda_event.
Введено в версии 1.0.0: collections community.aws
Обзор
- Этот модуль позволяет управлять сопоставлениями источников событий AWS Lambda, такими как события DynamoDB и потоков Kinesis, с помощью фреймворка Ansible. Эти сопоставления источников событий актуальны только в модели pull AWS Lambda, где AWS Lambda вызывает функцию. Модуль идемпотентен и поддерживает режим «Проверка». Используйте модуль community.aws.lambda для управления самой функцией Lambda и community.aws.lambda_alias для управления псевдонимами функций.
Требования
Ниже приведены требования, которые должны быть выполнены на хосте, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| alias строка | Имя псевдонима функции. Взаимоисключающие с version. | ||
| aws_access_key строка | Ключ доступа AWS. Если не задано, используется значение переменной среды AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. Если задано profile, этот параметр игнорируется. Передача параметров aws_access_key и profile одновременно устарела, и параметры будут сделаны взаимоисключающими после 2022-06-01. Псевдонимы: ec2_access_key, access_key | ||
| aws_ca_bundle путь | Расположение пакета сертификатов CA для проверки SSL-сертификатов. Используется только для модулей на основе boto3. Примечание: пакет CA считывается на стороне модуля и, возможно, необходимо явно скопировать его с контроллера, если он не выполняется локально. | ||
| aws_config словарь | Словарь для модификации конфигурации botocore. Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Для модулей boto используется только ключ 'user_agent'. См. http://boto.cloudhackers.com/en/latest/boto_config_tut.html#boto для получения дополнительной информации о конфигурации boto. | ||
| aws_secret_key строка | Секретный ключ AWS. Если не задано, используется значение переменной среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. Если задано profile, этот параметр игнорируется. Передача параметров aws_secret_key и profile одновременно устарела, и параметры будут сделаны взаимоисключающими после 2022-06-01. Псевдонимы: ec2_secret_key, secret_key | ||
| debug_botocore_endpoint_logs логический |
| Используйте регистрирователь botocore.endpoint для обработки уникальных (а не суммарных) API-вызовов «resource:action» во время выполнения задачи, выводит набор в ключ resource_actions в результатах задачи. Используйте обратный вызов aws_resource_action для вывода в итоговый список, созданный во время выполнения playbook. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована. | |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задано, используется значение переменной среды EC2_URL, если она есть. Псевдонимы: aws_endpoint_url, endpoint_url | ||
| event_source строка |
| Источник события, которое запускает функцию Lambda. Для событий DynamoDB и Kinesis выберите stream.
Для очередей SQS выберите sqs
| |
| lambda_function_arn строка / обязательно | Имя или ARN функции Lambda. Псевдонимы: function_name, function_arn | ||
| profile строка | Использует профиль boto. Работает только с boto >= 2.24.0. Использование profile переопределяет aws_access_key, aws_secret_key и security_token, и поддержка их одновременной передачи с profile устарела. aws_access_key, aws_secret_key и security_token будут сделаны взаимоисключающими с profile после 2022-06-01. Псевдонимы: aws_profile | ||
| region строка | Регион AWS для использования. Если не задано, используется значение переменной среды AWS_REGION или EC2_REGION, если она есть. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
Псевдонимы: aws_region, ec2_region | ||
| security_token строка | Токен безопасности AWS STS. Если не задано, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задано profile, этот параметр игнорируется. Передача параметров security_token и profile одновременно устарела, и параметры будут сделаны взаимоисключающими после 2022-06-01. Псевдонимы: aws_security_token, access_token | ||
| source_params словарь / обязательно | Вспомогательные параметры, необходимые для источника событий. | ||
| batch_size целое число | Значение по умолчанию: 100 | Максимальное количество записей, которое AWS Lambda получит из вашего источника событий при вызове вашей функции. | |
| enabled логический |
"true". | Указывает, должен ли AWS Lambda начать опрос или чтение из источника событий. | |
| source_arn строка / обязательно | Идентификатор ресурса Amazon (ARN) очереди SQS, потока Kinesis или потока DynamoDB, являющегося источником событий. | ||
| starting_position строка |
| Позиция в потоке, с которой AWS Lambda должен начать чтение. Обязательно при event_source=stream. | |
| state строка |
| Описывает требуемое состояние. | |
| validate_certs логический |
| При установке в «нет», SSL-сертификаты для версий boto >= 2.6.0 не будут проверены. | |
| version целое число | Версия функции Lambda. Взаимоисключающие с alias. | ||
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
AWS_URLилиEC2_URL,AWS_PROFILEилиAWS_DEFAULT_PROFILE,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,AWS_CA_BUNDLE - Ansible использует файл конфигурации boto (обычно ~/.boto), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
-
AWS_REGIONилиEC2_REGIONобычно могут быть использованы для указания региона AWS, когда это требуется, но это также можно настроить в файле конфигурации boto
Примеры
# Example that creates a lambda event notification for a DynamoDB stream
- name: DynamoDB stream event mapping
community.aws.lambda_event:
state: present
event_source: stream
function_name: "{{ function_name }}"
alias: Dev
source_params:
source_arn: arn:aws:dynamodb:us-east-1:123456789012:table/tableName/stream/2016-03-19T19:51:37.457
enabled: True
batch_size: 100
starting_position: TRIM_HORIZON
register: event
- name: Show source event
ansible.builtin.debug:
var: event.lambda_stream_events
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращённое значение | Описание |
|---|---|---|
| lambda_stream_events список / элементы=строка | успех | список словарей, возвращённых API, описывающих сопоставления событий потока |
Авторы
- Пьер Жодуэн (@pjodouin), Райан Браун (@ryansb)
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/aws/lambda_event_module.html