Spec-Zone.ru › Ansible 2.10

community.aws.lambda – Управление функциями AWS Lambda

Примечание

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

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

Чтобы использовать его в книге задач, укажите: community.aws.lambda.

Новое в версии 1.0.0: из community.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 Bundle).
Используется только для модулей, основанных на boto3.
Примечание: Набор CA Bundle читается со стороны модуля и может потребоваться явно скопировать его с контроллера, если модуль не запускается локально.
aws_config
словарь
Словарь для изменения конфигурации botocore.
Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.
Только ключ 'user_agent' используется для boto модулей. См. 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
dead_letter_arn
строка
Родительский объект, содержащий целевой Amazon Resource Name (ARN) очереди Amazon SQS или темы Amazon SNS.
debug_botocore_endpoint_logs
логический тип
    Варианты:
  • нет ←
  • да
Используйте журнализатор botocore.endpoint для анализа уникальных (а не общих) API-вызовов «ресурс:действие», выполненных во время задачи, выводя набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время книги задач. Переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS также может быть использована.
description
строка
Краткое описание функции, заданное пользователем. Lambda не использует это значение. Присвойте осмысленное описание по вашему усмотрению.
ec2_url
строка
URL для подключения к EC2 или облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, для которых требуется регион. Должен быть указан для всех остальных модулей, если регион не используется. Если не задан, используется значение переменной среды EC2_URL, если таковая есть.

псевдонимы: aws_endpoint_url, endpoint_url
environment_variables
словарь
Словарь переменных среды, предоставляемых функции Lambda.
handler
строка
Функция в вашем коде, которую Lambda вызывает для начала выполнения.
memory_size
целое число
По умолчанию:
128
Объем памяти в МБ, предоставляемый вашей функции Lambda.
name
строка / обязательно
Имя, которое вы хотите присвоить функции, которую вы загружаете. Не может быть изменено.
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
role
строка
Amazon Resource Name (ARN) роли IAM, которую Lambda принимает, когда выполняет вашу функцию для доступа к любым другим ресурсам Amazon Web Services (AWS). Можно использовать только ARN, если роль принадлежит тому же аккаунту AWS.
Требуется, когда state=present.
runtime
строка
Среда выполнения для функции Lambda, которую вы загружаете.
Требуется при создании функции. Использует параметры, описанные в документации boto3.
Требуется, когда state=present.
Список поддерживаемых сред выполнения см. в https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html.
s3_bucket
строка
Имя ведра Amazon S3, где хранится файл .zip, содержащий ваш пакет развертывания.
Если state=present, то должен быть указан либо zip_file, либо s3_bucket.
s3_bucket и s3_key требуются вместе.
s3_key
строка
Имя ключа объекта Amazon S3 (пакета развертывания), который вы хотите загрузить.
s3_bucket и s3_key требуются вместе.
s3_object_version
строка
Версия объекта Amazon S3 (пакета развертывания), которую вы хотите загрузить.
security_token
строка
AWS STS security token. Если не задан, используется значение переменной среды AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN.
Если задан параметр profile, этот параметр игнорируется.
Передача параметров security_token и profile одновременно устарела и параметры будут сделаны взаимоисключающими после 2022-06-01.

псевдонимы: aws_security_token, access_token
state
строка
    Варианты:
  • present ←
  • absent
Создать или удалить функцию Lambda.
tags
словарь
словарь тегов для применения к функции (требуется botocore 1.5.40 или выше).
timeout
целое число
По умолчанию:
3
Максимальное время выполнения функции в секундах, после которого Lambda должна завершить функцию.
tracing_mode
строка
    Варианты:
  • Активно
  • Пропускать
Установите режим 'Активно', чтобы выборочно отслеживать входящие запросы с помощью AWS X-Ray. По умолчанию выключен (установлен в 'Пропускать').
validate_certs
логический тип
    Варианты:
  • нет
  • да ←
При установке в "нет", сертификаты SSL не будут проверены для версий boto >= 2.6.0.
vpc_security_group_ids
список / элементы=строка
Список идентификаторов групп безопасности VPC, которые следует ассоциировать с функцией Lambda.
Требуется, когда используется vpc_subnet_ids.
vpc_subnet_ids
список / элементы=строка
Список идентификаторов подсетей для запуска функции Lambda.
Используйте этот параметр, если вам необходимо получить доступ к ресурсам в вашей VPC. Оставьте пустым, если вы не хотите запускать функцию в VPC.
Если задано, vpc_security_group_ids также должны быть заданы.
zip_file
строка
Файл .zip, содержащий пакет развертывания.
Если state=present, то должен быть указан либо zip_file, либо s3_bucket.

псевдонимы: src

Примечания

Примечание

  • Если параметры не заданы в модуле, следующие переменные среды могут быть использованы в порядке убывания приоритета 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

Примеры

# Create Lambda functions
- name: looped creation
  community.aws.lambda:
    name: '{{ item.name }}'
    state: present
    zip_file: '{{ item.zip_file }}'
    runtime: 'python2.7'
    role: 'arn:aws:iam::987654321012:role/lambda_basic_execution'
    handler: 'hello_python.my_handler'
    vpc_subnet_ids:
    - subnet-123abcde
    - subnet-edcba321
    vpc_security_group_ids:
    - sg-123abcde
    - sg-edcba321
    environment_variables: '{{ item.env_vars }}'
    tags:
      key1: 'value1'
  loop:
    - name: HelloWorld
      zip_file: hello-code.zip
      env_vars:
        key1: "first"
        key2: "second"
    - name: ByeBye
      zip_file: bye-code.zip
      env_vars:
        key1: "1"
        key2: "2"

# To remove previously added tags pass an empty dict
- name: remove tags
  community.aws.lambda:
    name: 'Lambda function'
    state: present
    zip_file: 'code.zip'
    runtime: 'python2.7'
    role: 'arn:aws:iam::987654321012:role/lambda_basic_execution'
    handler: 'hello_python.my_handler'
    tags: {}

# Basic Lambda function deletion
- name: Delete Lambda functions HelloWorld and ByeBye
  community.aws.lambda:
    name: '{{ item }}'
    state: absent
  loop:
    - HelloWorld
    - ByeBye

Значения возврата

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

Ключ Возвращаемое значение Описание
code
словарь
успех
местоположение функции lambda, возвращаемое get_function в boto3

Пример:
{'location': 'предзаполненный URL S3', 'repository_type': 'S3'}
configuration
словарь
успех
метаданные функции lambda, возвращаемые get_function в boto3

Пример:
{'code_sha256': 'zOAGfF5JLFuzZoSNirUtOrQp+S341IOA3BcoXXoaIaU=', 'code_size': 123, 'description': 'Моя функция', 'environment': {'variables': {'key': 'value'}}, 'function_arn': 'arn:aws:lambda:us-east-1:123456789012:function:myFunction:1', 'function_name': 'myFunction', 'handler': 'index.handler', 'last_modified': '2017-08-01T00:00:00.000+0000', 'memory_size': 128, 'revision_id': 'a2x9886d-d48a-4a0c-ab64-82abc005x80c', 'role': 'arn:aws:iam::123456789012:role/lambda_basic_execution', 'runtime': 'nodejs6.10', 'timeout': 3, 'tracing_config': {'mode': 'Активный'}, 'version': '1', 'vpc_config': {'security_group_ids': [], 'subnet_ids': [], 'vpc_id': '123'}}


Авторы

  • Steyn Huizinga (@steynovich)

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

Spec-Zone.ru

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