execute_lambda - Выполнение функции AWS Lambda
Новая в версии 2.2.
- Краткое описание
- Требования (для хоста, на котором выполняется модуль)
- Параметры
- Примеры
- Возвращаемые значения
- Примечания
Краткое описание
- Этот модуль выполняет функции AWS Lambda, позволяя выполнять вызовы синхронно и асинхронно.
Требования (для хоста, на котором выполняется модуль)
- boto
- boto3
- python >= 2.6
Параметры
| параметр | обязательно | по умолчанию | варианты | комментарии |
|---|---|---|---|---|
| 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 | ||
| dry_run | нет | Не *фактически* вызывать функцию. Вызов DryRun проверит, обладает ли вызывающий правами на вызов функции, особенно для проверки прав доступа между аккаунтами. | ||
| ec2_url | нет | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если таковая есть. | ||
| function_arn | нет | None | Имя вызываемой функции | |
| name | нет | None | Имя вызываемой функции. Используется только для вызовов в рамках вызывающего аккаунта. Для вызова функции в другом аккаунте используйте function_arn для указания полного ARN. | |
| payload | нет | Словарь в любом формате, который будет предоставлен в качестве входных данных функции Lambda. | ||
| profile (добавлен в 1.6)
| нет | Использует профиль boto. Работает только с boto >= 2.24.0. | ||
| security_token (добавлен в 1.6)
| нет | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: access_token | ||
| tail_log | нет | Если tail_log=true, результат задачи будет включать последние 4 КБ журнала CloudWatch для выполнения функции. Отображение журнала работает только при использовании синхронного вызова wait=true. Обычно используется для разработки или тестирования Lambda-функций. | ||
| validate_certs (добавлен в 1.5)
| нет | да |
| Если установлено «нет», сертификаты SSL не будут проверяться для версий boto >= 2.6.0. |
| version_qualifier | нет | LATEST | Какая версия/псевдоним функции должна быть запущена. По умолчанию используется последняя LATEST версия, но может быть установлена на любую существующую версию или псевдоним. Подробности см. на https;//docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html. | |
| wait | нет | True | Нужно ли ожидать результатов функции. Если wait равно false, задача не вернёт никаких результатов. Чтобы ожидать завершения работы функции Lambda, установите wait=true и результат будет доступен в ключе output. |
Примеры
- execute_lambda:
name: test-function
# the payload is automatically serialized and sent to the function
payload:
foo: bar
value: 8
register: response
# Test that you have sufficient permissions to execute a Lambda function in
# another account
- execute_lambda:
function_arn: arn:aws:lambda:us-east-1:123456789012:function/some-function
dry_run: true
- execute_lambda:
name: test-function
payload:
foo: bar
value: 8
wait: true
tail_log: true
register: response
# the response will have a `logs` key that will contain a log (up to 4KB) of the function execution in Lambda.
- execute_lambda:
name: test-function
version_qualifier: PRODUCTION
Возвращаемые значения
Общие возвращаемые значения описаны здесь Возвращаемые значения, следующие поля уникальны для данного модуля:
| имя | описание | возвращается | тип | пример |
|---|---|---|---|---|
| logs | Последние 4 КБ журналов функции. Предоставляется только если tail_log равно true | если I(tail_log) == true | строка | |
| output | Выход функции, если wait=true и функция возвращает значение | успешно | словарь | { 'output': 'что-то' } |
| status | StatusCode код выхода API-вызова (200 для синхронных вызовов, 202 для асинхронных) | всегда | целое число | 200 |
Примечания
Примечание
- Асинхронный вызов всегда возвращает пустой ключ
output. - Синхронный вызов может привести к таймауту функции, что приведёт к пустому ключу
output. - Если параметры не установлены в модуле, следующие переменные окружения могут быть использованы в порядке убывания приоритета
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
Статус
Этот модуль помечен как бета-версия, что означает, что его интерфейс не гарантируется обратно совместимым.
Для помощи в разработке модулей, если вы так пожелаете, ознакомьтесь с Справочной информацией по сообществу и участию в разработке, Тестирование Ansible и Разработка модулей.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.4/execute_lambda_module.html