community.aws.lambda_event – Создаёт, обновляет или удаляет сопоставления событий AWS Lambda функции
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Для использования в книге задач укажите: community.aws.lambda_event.
Новый в версии 1.0.0: из 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_actions в результатах задачи. Используйте обратный вызов aws_resource_action для вывода в список всех вызовов, совершенных во время выполнения книги задач. Переменная среды 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 Resource Name (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–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/aws/lambda_event_module.html