community.aws.s3_bucket_notification – Создаёт, обновляет или удаляет уведомления о событиях S3-ведра для lambda
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Чтобы использовать его в плейбуке, укажите: community.aws.s3_bucket_notification.
Новое в версии 1.0.0: из community.aws
Описание
- Этот модуль позволяет управлять соответствиями событий ведра с функцией AWS Lambda через фреймворк Ansible. Используйте модуль community.aws.lambda для управления самой функцией lambda, community.aws.lambda_alias для управления псевдонимами функций и community.aws.lambda_policy для изменения разрешений 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. Только ключ '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 | |
| bucket_name строка / обязательно | Имя S3 ведра. | |
| debug_botocore_endpoint_logs логический тип |
| Используйте логирование botocore.endpoint для анализа уникальных (а не общих) API-вызовов "ресурс:действие", совершённых во время задачи, выводит набор в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода в общий список, созданный во время плейбука. Также может использоваться переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS. |
| ec2_url строка | URL для подключения к EC2 или вашему облаку Eucalyptus (по умолчанию модуль будет использовать конечные точки EC2). Игнорируется для модулей, где требуется регион. Должен быть указан для всех других модулей, если регион не используется. Если не задан, используется значение переменной окружения EC2_URL, если она есть. алиасы: aws_endpoint_url, endpoint_url | |
| event_name строка / обязательно | Уникальное имя для уведомления о событии в ведре. | |
| events список / элементы=строка |
| События, которые вы хотите активировать для уведомлений. Вы можете выбрать несколько событий для отправки в один и тот же пункт назначения, настроить разные события для отправки в разные пункты назначения и настроить префикс или суффикс для события. Однако для каждого ведра отдельные события не могут иметь несколько конфигураций с перекрывающимися префиксами или суффиксами, которые могут соответствовать одному и тому же ключу объекта. Требуется, когда state=present. |
| lambda_alias строка | Имя псевдонима функции Lambda. Взаимоисключающие с lambda_version. | |
| lambda_function_arn строка | ARN функции lambda. алиасы: function_arn | |
| lambda_version целое число | Версия функции Lambda. Взаимоисключающие с lambda_alias. | |
| prefix строка | Необязательный префикс для ограничения уведомлений объектами с ключами, начинающимися с соответствующих символов. | |
| 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 | |
| state строка |
| Описывает желаемое состояние. |
| suffix строка | Необязательный суффикс для ограничения уведомлений объектами с ключами, заканчивающимися соответствующими символами. | |
| validate_certs логический тип |
| При значении "нет", SSL-сертификаты не будут проверяться для версий boto >= 2.6.0. |
Примечания
Примечание
- Этот модуль сильно зависит от community.aws.lambda_policy, так как вам нужно разрешить
lambda:InvokeFunctionразрешение для вашей функции lambda. - Если параметры не заданы в модуле, могут использоваться следующие переменные окружения в порядке убывания приоритета
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
Примеры
---
# Example that creates a lambda event notification for a bucket
- name: Process jpg image
community.aws.s3_bucket_notification:
state: present
event_name: on_file_add_or_remove
bucket_name: test-bucket
function_name: arn:aws:lambda:us-east-2:526810320200:function:test-lambda
events: ["s3:ObjectCreated:*", "s3:ObjectRemoved:*"]
prefix: images/
suffix: .jpg
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для данного модуля:
| Ключ | Возвращаемое | Описание |
|---|---|---|
| notification_configuration список / элементы=строка | успех | список текущих применённых уведомлений |
Авторы
- XLAB d.o.o. (@xlab-si)
- Aljaz Kosir (@aljazkosir)
- Miha Plesko (@miha-plesko)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/aws/s3_bucket_notification_module.html