Spec-Zone.ru › Ansible

Модуль community.aws.s3_bucket_notification – Создает, обновляет или удаляет уведомления о событиях в ведре S3, направленные на функции Lambda, SNS или SQS.

Примечание

Этот модуль входит в состав коллекции community.aws (версия 8.0.0).

Эта коллекция может быть уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.

Для установки используйте: ansible-galaxy collection install community.aws. Для использования этого модуля необходимы дополнительные требования. Подробнее см. Требования.

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

Добавлен в community.aws 1.0.0

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

Описание

  • Этот модуль поддерживает создание, обновление и удаление профилей уведомлений о событиях в ведре S3, направленных на функции Lambda, темы SNS или очереди SQS.
  • Целевой объект для уведомлений должен уже существовать. Для функций Lambda используйте модуль community.aws.lambda для управления самой функцией Lambda, community.aws.lambda_alias для управления псевдонимами функций и community.aws.lambda_policy для изменения разрешений функций Lambda. Для SNS или SQS используйте community.aws.sns_topic или community.aws.sqs_queue.

Требования

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

  • python >= 3.6
  • boto3 >= 1.26.0
  • botocore >= 1.29.0

Параметры

Параметр

Комментарии

access_key

aliases: aws_access_key_id, aws_access_key, ec2_access_key

string

Идентификатор ключа доступа AWS.

См. документацию AWS для получения дополнительной информации о токенах доступа https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Переменные окружения AWS_ACCESS_KEY_ID, AWS_ACCESS_KEY или EC2_ACCESS_KEY также могут использоваться в порядке убывания предпочтения.

Параметры aws_access_key и profile являются взаимоисключающими.

Псевдоним aws_access_key_id был добавлен в релизе 5.1.0 для согласованности с AWS botocore SDK.

Псевдоним ec2_access_key устарел и будет удален в релизе после 2024-12-01.

Поддержка переменной окружения EC2_ACCESS_KEY устарела и будет удалена в релизе после 2024-12-01.

aws_ca_bundle

path

Расположение пакета CA, используемого при проверке SSL-сертификатов.

Переменная окружения AWS_CA_BUNDLE также может использоваться.

aws_config

dictionary

Словарь для изменения конфигурации botocore.

Параметры можно найти в документации AWS https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config.

bucket_name

string / required

Имя S3-бакета.

debug_botocore_endpoint_logs

boolean

Использовать botocore.endpoint logger для анализа уникальных (а не общих) "resource:action" вызовов API, выполненных во время задачи, выводя набор в ключ resource_actions в результатах задачи. Используйте aws_resource_action callback для вывода в общий список, сделанный во время playbook.

Переменная окружения ANSIBLE_DEBUG_BOTOCORE_LOGS также может использоваться.

Варианты:

  • false ← (по умолчанию)
  • true

endpoint_url

aliases: ec2_url, aws_endpoint_url, s3_url

string

URL для подключения вместо стандартных конечных точек AWS. Хотя это можно использовать для подключения к другим совместимым с AWS сервисам, коллекции amazon.aws и community.aws тестируются только на AWS.

Переменные окружения AWS_URL или EC2_URL также могут использоваться в порядке убывания предпочтения.

Псевдонимы ec2_url и s3_url устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменной окружения EC2_URL устарела и будет удалена в релизе после 2024-12-01.

event_name

string / required

Уникальное имя для уведомления о событии в бакете.

events

list / elements=string

События, которые будут инициировать уведомление. Вы можете выбрать несколько событий для отправки в одно и то же место назначения, настроить разные события для отправки в разные места назначения и настроить префикс или суффикс для события. Однако для каждого бакета отдельные события не могут иметь нескольких конфигураций с перекрывающимися префиксами или суффиксами, которые могли бы соответствовать одному и тому же ключу объекта.

Обязательно, когда state=present.

Варианты:

  • "s3:ObjectCreated:*"
  • "s3:ObjectCreated:Put"
  • "s3:ObjectCreated:Post"
  • "s3:ObjectCreated:Copy"
  • "s3:ObjectCreated:CompleteMultipartUpload"
  • "s3:ObjectRemoved:*"
  • "s3:ObjectRemoved:Delete"
  • "s3:ObjectRemoved:DeleteMarkerCreated"
  • "s3:ObjectRestore:Post"
  • "s3:ObjectRestore:Completed"
  • "s3:ReducedRedundancyLostObject"

По умолчанию: []

lambda_alias

string

Имя псевдонима функции Lambda.

Взаимоисключаемо с lambda_version.

lambda_function_arn

aliases: function_arn

string

ARN функции lambda.

Взаимоисключаемо с queue_arn и topic_arn.

lambda_version

integer

Версия функции Lambda.

Взаимоисключаемо с lambda_alias.

По умолчанию: 0

prefix

string

Необязательный префикс для ограничения уведомлений объектами с ключами, начинающимися с совпадающих символов.

По умолчанию: ""

profile

aliases: aws_profile

string

Именованный профиль AWS для использования для аутентификации.

См. документацию AWS для получения дополнительной информации об именованных профилях https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html.

Переменная окружения AWS_PROFILE также может использоваться.

Параметр profile является взаимоисключающим с параметрами aws_access_key, aws_secret_key и security_token.

queue_arn

string

добавлено в community.aws 3.2.0

ARN очереди SQS.

Взаимоисключаемо с topic_arn и lambda_function_arn.

region

aliases: aws_region, ec2_region

string

Регион AWS для использования.

Для глобальных сервисов, таких как IAM, Route53 и CloudFront, region игнорируется.

Также можно использовать переменные среды AWS_REGION или EC2_REGION.

Дополнительную информацию см. в документации Amazon AWS http://docs.aws.amazon.com/general/latest/gr/rande.html#ec2_region.

Псевдоним ec2_region устарел и будет удалён в релизе после 2024-12-01

Поддержка переменной среды EC2_REGION устарела и будет удалена в релизе после 2024-12-01.

secret_key

aliases: aws_secret_access_key, aws_secret_key, ec2_secret_key

string

Секретный ключ доступа AWS.

Дополнительную информацию о маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_SECRET_ACCESS_KEY, AWS_SECRET_KEY, или EC2_SECRET_KEY в порядке убывания приоритета.

Параметры secret_key и profile взаимно исключающие.

Псевдоним aws_secret_access_key был добавлен в релизе 5.1.0 для согласованности с SDK AWS botocore.

Псевдоним ec2_secret_key устарел и будет удалён в релизе после 2024-12-01.

Поддержка переменной среды EC2_SECRET_KEY устарела и будет удалена в релизе после 2024-12-01.

session_token

aliases: aws_session_token, security_token, aws_security_token, access_token

string

Токен сессии AWS STS для использования с временными учетными данными.

Дополнительную информацию о маркерах доступа см. в документации AWS https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html#access-keys-and-secret-access-keys.

Также можно использовать переменные среды AWS_SESSION_TOKEN, AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN в порядке убывания приоритета.

Параметры security_token и profile взаимно исключающие.

Псевдонимы aws_session_token и session_token были добавлены в релизе 3.2.0, а параметр был переименован из security_token в session_token в релизе 6.0.0.

Псевдонимы security_token, aws_security_token и access_token устарели и будут удалены в релизе после 2024-12-01.

Поддержка переменных среды EC2_SECRET_KEY и AWS_SECURITY_TOKEN устарела и будет удалена в релизе после 2024-12-01.

state

string

Определяет желаемое состояние.

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

suffix

string

Необязательный суффикс для ограничения уведомлений объектами с ключами, заканчивающимися соответствующими символами.

По умолчанию: ""

topic_arn

string

добавлено в community.aws 3.2.0

ARN темы SNS.

Взаимно исключающие с queue_arn и lambda_function_arn.

validate_certs

boolean

При установке в false, сертификаты SSL для связи с API AWS не будут проверены.

Установка validate_certs=false настоятельно не рекомендуется; вместо этого можно установить aws_ca_bundle.

Варианты:

  • false
  • true ← (по умолчанию)

Примечания

Примечание

  • При использовании функции Lambda в качестве целевого объекта также требуется политика Lambda. Используйте community.aws.lambda_policy для этого, чтобы разрешить lambda:InvokeFunction для уведомлений.
  • Внимание: Для модулей переменные среды и файлы конфигурации читаются из контекста Ansible «хост», а не «контроллер». Поэтому файлы, возможно, необходимо явно скопировать на «хост». Для плагинов поиска и подключения переменные среды и файлы конфигурации читаются из контекста Ansible «контроллер», а не «хост».
  • AWS SDK (boto3), используемый Ansible, также может считывать значения по умолчанию для учетных данных и других настроек, таких как регион, из своих файлов конфигурации в контексте Ansible «хост» (обычно ~/.aws/credentials). Дополнительную информацию см. в https://boto3.amazonaws.com/v1/documentation/api/latest/guide/credentials.html.

Примеры

---
# Examples adding notification target configs to a S3 bucket
- name: Setup bucket event notification to a Lambda function
  community.aws.s3_bucket_notification:
    state: present
    event_name: on_file_add_or_remove
    bucket_name: test-bucket
    lambda_function_arn: arn:aws:lambda:us-east-2:123456789012:function:test-lambda
    events: ["s3:ObjectCreated:*", "s3:ObjectRemoved:*"]
    prefix: images/
    suffix: .jpg

- name: Setup bucket event notification to SQS
  community.aws.s3_bucket_notification:
    state: present
    event_name: on_file_add_or_remove
    bucket_name: test-bucket
    queue_arn: arn:aws:sqs:us-east-2:123456789012:test-queue
    events: ["s3:ObjectCreated:*", "s3:ObjectRemoved:*"]
    prefix: images/
    suffix: .jpg

# Example removing an event notification
- name: Remove event notification
  community.aws.s3_bucket_notification:
    state: absent
    event_name: on_file_add_or_remove
    bucket_name: test-bucket

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

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

Ключ

Описание

notification_configuration

сложный

словарь текущих примененных уведомлений

Возвращается: успех

lambda_function_configurations

список / элементы=строка

Список текущих конфигураций уведомлений Lambda-функций, применённых к ведру.

Возвращается: успех

queue_configurations

список / элементы=строка

Список текущих конфигураций уведомлений SQS, применённых к ведру.

Возвращается: успех

topic_configurations

список / элементы=строка

Список текущих конфигураций уведомлений SNS, применённых к ведру.

Возвращается: успех

Авторы

  • XLAB d.o.o. (@xlab-si)
  • Aljaz Kosir (@aljazkosir)
  • Miha Plesko (@miha-plesko)
  • Mark Woolley (@marknet15)

Ссылки на сборку

  • Система отслеживания проблем
  • Репозиторий (источники)
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/community/aws/s3_bucket_notification_module.html

Spec-Zone.ru

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