lambda_event – Создаёт, обновляет или удаляет сопоставления событий AWS Lambda функции
Обзор
- Этот модуль позволяет управлять сопоставлениями источников событий AWS Lambda функции, такими как события DynamoDB и потоков Kinesis, через фреймворк Ansible. Эти сопоставления источников событий актуальны только в модели взятия AWS Lambda, где AWS Lambda вызывает функцию. Он идемпотентен и поддерживает режим "Проверка". Используйте модуль lambda для управления самой функцией Lambda и lambda_alias для управления псевдонимами функций.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- boto
- boto3
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии |
|---|---|---|
| alias
- / обязательно
|
Имя псевдонима функции. Взаимоисключительно с version. |
|
| aws_access_key
строка
|
Ключ доступа AWS. Если не задан, используется значение переменной окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY. | |
| aws_secret_key
строка
|
Секретный ключ AWS. Если не задан, используется значение переменной окружения AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY или EC2_SECRET_KEY. | |
| debug_botocore_endpoint_logs
логический тип
добавлено в 2.8 |
|
Использовать логирование botocore.endpoint для анализа уникальных (а не суммарных) API-вызовов «ресурс:действие», сделанных во время задачи, выводить набор в ключ resource_actions в результатах задачи. Используйте обратный вызов aws_resource_action, чтобы выводить общий список, сделанный во время выполнения книги задач. Может также использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS. |
| ec2_url
строка
|
URL для подключения к EC2 или вашей облачной системе Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если не используется регион. Если не задан, используется значение переменной окружения EC2_URL, если таковая имеется. | |
| event_source
-
|
|
Источник события, которое запускает функцию Lambda. Для событий DynamoDB и Kinesis выбирается 'поток'. Для очередей SQS выбирается 'sqs'. |
| lambda_function_arn
- / обязательно
|
Имя или ARN функции Lambda. | |
| profile
строка
|
Использует профиль boto. Работает только с boto >= 2.24.0. | |
| region
строка
|
AWS-регион для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковая имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region | |
| security_token
строка
|
AWS STS security token. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. | |
| source_params
- / обязательно
|
Подпараметры, необходимые для источника событий. == Источник событий потока == Amazon Resource Name (ARN) потока Kinesis или DynamoDB, являющегося источником событий. Указывает, должен ли AWS Lambda начать опрос источника событий. Значение по умолчанию — True. Наибольшее количество записей, которое AWS Lambda получит от вашего источника событий во время вызова вашей функции. Значение по умолчанию — 100. Позиция в потоке, с которой AWS Lambda должен начать чтение. Доступные варианты — TRIM_HORIZON или LATEST. == Источник событий sqs == Amazon Resource Name (ARN) очереди SQS для чтения событий. Указывает, должен ли AWS Lambda начать чтение из источника событий. Значение по умолчанию — True. Наибольшее количество записей, которое AWS Lambda получит от вашего источника событий во время вызова вашей функции. Значение по умолчанию — 100. | |
| state
- / обязательно
|
|
Описывает желаемое состояние. |
| validate_certs
логический тип
|
|
При значении «нет» сертификаты SSL не будут проверяться для версий boto >= 2.6.0. |
| version
-
|
Версия функции Lambda. Взаимоисключительно с alias. |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
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), если учетные данные не предоставлены. См. 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
- hosts: localhost
gather_facts: no
vars:
state: present
tasks:
- name: DynamoDB stream event mapping
lambda_event:
state: "{{ state | default('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
- name: Show source event
debug:
var: lambda_stream_events
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| lambda_stream_events
список
|
успех | список словарей, возвращаемых API, описывающих сопоставления событий потока |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [предварительный просмотр]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Pierre Jodouin (@pjodouin), Ryan Brown (@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.9/modules/lambda_event_module.html