Spec-Zone.ru › Ansible 2.10

community.aws.execute_lambda – Выполнение функции AWS Lambda

Примечание

Этот плагин входит в состав коллекции community.aws (версия 1.3.0).

Для его установки используйте: ansible-galaxy collection install community.aws.

Для использования в книге задач укажите: community.aws.execute_lambda.

Новое в версии 1.0.0: of community.aws

  • Обзор
  • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения

Обзор

  • Этот модуль выполняет функции AWS Lambda, позволяя синхронное и асинхронное вызов.

Требования

Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.

  • boto
  • boto3
  • python >= 2.6

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
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 также может быть использована.
dry_run
логический тип
    Варианты:
  • нет ←
  • да
Не вызывать функцию *фактически*. Вызов DryRun проверит, имеет ли вызывающий сторона разрешения на вызов функции, особенно для проверки разрешений между учетными записями.
ec2_url
строка
Адрес, используемый для подключения к EC2 или вашей облачной системе Eucalyptus (по умолчанию модуль будет использовать адреса EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть.

псевдонимы: aws_endpoint_url, endpoint_url
function_arn
строка
Имя вызываемой функции
name
строка
Имя вызываемой функции. Это можно использовать только для вызовов в рамках вызывающей учетной записи. Для вызова функции в другой учетной записи используйте function_arn для указания полного ARN.
payload
словарь
Значение по умолчанию:
{}
Словарь в любом формате, который нужно предоставить в качестве входных данных для функции Lambda.
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
tail_log
логический тип
    Варианты:
  • нет ←
  • да
Если tail_log=да, результат задачи будет включать последние 4 КБ журнала CloudWatch для выполнения функции. Подсмотр журнала работает только при использовании синхронного вызова wait=да. Обычно используется для разработки или тестирования Lambdas.
validate_certs
логический тип
    Варианты:
  • нет
  • да ←
При значении "нет", SSL-сертификаты не будут проверяться для версий boto >= 2.6.0.
version_qualifier
строка
Какая версия/псевдоним функции будет запущена. По умолчанию это LATEST ревизия, но может быть задана любая существующая версия или псевдоним. См. https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html для получения подробностей.
wait
логический тип
    Варианты:
  • нет
  • да ←
Ожидать ли результатов функции или нет. Если wait=нет, задача не вернет никаких результатов. Чтобы дождаться завершения функции Lambda, установите wait=да, и результат будет доступен в ключе output.

Примечания

Примечание

  • Асинхронный вызов всегда вернёт пустой ключ output.
  • Синхронный вызов может привести к таймауту функции, в результате чего пустой ключ output.
  • Если параметры не заданы внутри модуля, можно использовать следующие переменные окружения в порядке убывания приоритета 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

Примеры

- community.aws.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
- community.aws.execute_lambda:
    function_arn: arn:aws:lambda:us-east-1:123456789012:function/some-function
    dry_run: true

- community.aws.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

# Pass the Lambda event payload as a json file.
- community.aws.execute_lambda:
    name: test-function
    payload: "{{ lookup('file','lambda_event.json') }}"
  register: response

- community.aws.execute_lambda:
    name: test-function
    version_qualifier: PRODUCTION

Возвращаемые значения

Общие значения возврата описаны в здесь, следующие поля уникальны для этого модуля:

Ключ Возвращаемое значение Описание
logs
строка
если tail_log == true
Последние 4 КБ журналов функции. Предоставляется только если tail_log равно true

output
словарь
успех
Выходные данные функции, если wait=true и функция возвращает значение

Пример:
{ 'output': 'что-то' }
status
целое число
всегда
StatusCode выхода вызова API (200 для синхронных вызовов, 202 для асинхронных)

Пример:
200


Авторы

  • Ryan Scott Brown (@ryansb) <ryansb@redhat.com>

© 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/execute_lambda_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API