Spec-Zone.ru › Ansible 2.9

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

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

Описание

  • Этот модуль выполняет функции 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
debug_botocore_endpoint_logs
логическое
добавлено в 2.8
    Варианты:
  • нет ←
  • да
Используйте логгер botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода общего списка, выполненного во время исполнения плейбука. Также можно использовать переменную окружения ANSIBLE_DEBUG_BOTOCORE_LOGS.
dry_run
логическое
    Варианты:
  • нет ←
  • да
Не вызывать функцию *на самом деле*. Вызов DryRun проверит, имеет ли вызывающий права на вызов функции, особенно для проверки прав доступа между учетными записями.
ec2_url
строка
URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть.
function_arn
-
Имя вызываемой функции
name
-
Имя вызываемой функции. Это может быть использовано только для вызовов внутри учетной записи вызывающего. Для вызова функции в другой учетной записи используйте function_arn для указания полного ARN.
payload
-
По умолчанию:
{}
Словарь любого формата, который нужно предоставить в качестве входных данных функции 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

Псевдонимы: aws_region, ec2_region
security_token
строка
Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.

Псевдонимы: access_token
tail_log
логическое
    Варианты:
  • нет ←
  • да
Если tail_log=yes, результат задачи будет включать последние 4 КБ журнала CloudWatch для выполнения функции. Отслеживание журнала работает только при использовании синхронного вызова wait=yes. Это обычно используется для разработки или тестирования функций Lambda.
validate_certs
логическое
    Варианты:
  • нет
  • да ←
При установке «нет», сертификаты SSL не будут проверяться для версий boto >= 2.6.0.
version_qualifier
-
По умолчанию:
"LATEST"
Какую версию/псевдоним функции запустить. По умолчанию используется последняя LATEST редакция, но можно установить любую существующую версию или псевдоним. Подробности см. в https://docs.aws.amazon.com/lambda/latest/dg/versioning-aliases.html.
wait
логическое
    Варианты:
  • нет
  • да ←
Дожидаться результатов функции или нет. Если wait no, задача не вернет никаких результатов. Для ожидания завершения функции Lambda, установите wait=yes и результат будет доступен в ключе output.

Примечания

Примечание

  • Асинхронный вызов всегда возвращает пустой ключ 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), если учетные данные не предоставлены. См. https://boto.readthedocs.io/en/latest/boto_config_tut.html
  • AWS_REGION или EC2_REGION можно использовать для указания региона AWS при необходимости, но это также можно настроить в файле конфигурации boto

Примеры

- 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

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

- 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


Статус

  • Данный модуль не гарантирует обратную совместимость. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • 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.9/modules/execute_lambda_module.html

Spec-Zone.ru

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