lambda_alias – Создание, обновление или удаление псевдонимов функций AWS Lambda.
Новая версия 2.2.
Обзор
- Этот модуль позволяет управлять псевдонимами функций AWS Lambda через фреймворк Ansible. Он идемпотентен и поддерживает режим «Проверка». Используйте модуль lambda для управления самой функцией Lambda и lambda_event для управления соответствиями источников событий.
Требования
Ниже перечислены требования, необходимые на хосте, на котором выполняется этот модуль.
- 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 | |
| description - | Краткое описание псевдонима функции, задаваемое пользователем. | |
| ec2_url - | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, для которых требуется регион. Должен быть указан для всех остальных модулей, если не используется регион. Если не задан, используется значение переменной окружения EC2_URL, если таковое имеется. | |
| function_name - / обязательно | Имя псевдонима функции. | |
| name - / обязательно | Имя псевдонима функции. псевдонимы: имя_псевдонима | |
| profile - добавлено в 1.6 | Использует профиль boto. Работает только с boto >= 2.24.0. | |
| region - | Регион AWS для использования. Если не указан, используется значение переменной окружения AWS_REGION или EC2_REGION, если таковое имеется. См. http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region
псевдонимы: регион_aws, регион_ec2 | |
| security_token - добавлено в 1.6 | Токен безопасности AWS STS. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. псевдонимы: токен_доступа | |
| state - / обязательно |
| Описывает желаемое состояние. |
| validate_certs boolean добавлено в 1.5 |
| При установке «нет», сертификаты SSL не будут проверены для boto-версий >= 2.6.0. |
| version - | Версия, связанная с псевдонимом функции Lambda. Значение 0 (или опущенный параметр) устанавливает псевдоним на версию $LATEST. псевдонимы: версия_функции |
Примечания
Примечание
- Если параметры не заданы в модуле, можно использовать следующие переменные окружения в порядке убывания приоритета
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
Примеры
---
# Simple example to create a lambda function and publish a version
- hosts: localhost
gather_facts: no
vars:
state: present
project_folder: /path/to/deployment/package
deployment_package: lambda.zip
account: 123456789012
production_version: 5
tasks:
- name: AWS Lambda Function
lambda:
state: "{{ state | default('present') }}"
name: myLambdaFunction
publish: True
description: lambda function description
code_s3_bucket: package-bucket
code_s3_key: "lambda/{{ deployment_package }}"
local_path: "{{ project_folder }}/{{ deployment_package }}"
runtime: python2.7
timeout: 5
handler: lambda.handler
memory_size: 128
role: "arn:aws:iam::{{ account }}:role/API2LambdaExecRole"
- name: show results
debug:
var: lambda_facts
# The following will set the Dev alias to the latest version ($LATEST) since version is omitted (or = 0)
- name: "alias 'Dev' for function {{ lambda_facts.FunctionName }} "
lambda_alias:
state: "{{ state | default('present') }}"
function_name: "{{ lambda_facts.FunctionName }}"
name: Dev
description: Development is $LATEST version
# The QA alias will only be created when a new version is published (i.e. not = '$LATEST')
- name: "alias 'QA' for function {{ lambda_facts.FunctionName }} "
lambda_alias:
state: "{{ state | default('present') }}"
function_name: "{{ lambda_facts.FunctionName }}"
name: QA
version: "{{ lambda_facts.Version }}"
description: "QA is version {{ lambda_facts.Version }}"
when: lambda_facts.Version != "$LATEST"
# The Prod alias will have a fixed version based on a variable
- name: "alias 'Prod' for function {{ lambda_facts.FunctionName }} "
lambda_alias:
state: "{{ state | default('present') }}"
function_name: "{{ lambda_facts.FunctionName }}"
name: Prod
version: "{{ production_version }}"
description: "Production is version {{ production_version }}"
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| alias_arn строка | успех | Полный ARN функции, включая псевдоним Пример: arn:aws:lambda:us-west-2:123456789012:function:myFunction:dev |
| description строка | успех | Краткое описание псевдонима Пример: Этап разработки моего нового приложения |
| function_version строка | успех | Квалификатор, к которому относится псевдоним Пример: $LATEST |
| name строка | успех | Назначаемое имя псевдонима Пример: dev |
Статус
- Этот модуль не гарантирует обратную совместимость интерфейса. [превью]
- Этот модуль поддерживается сообществом Ansible. [сообщество]
Авторы
- Pierre Jodouin (@pjodouin), Ryan Scott Brown (@ryansb)
Подсказка
Если вы обнаружите какие-либо проблемы в этой документации, вы можете отредактировать этот документ для улучшения.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.7/modules/lambda_alias_module.html