Spec-Zone.ru › Ansible

Модуль community.aws.ecs_ecr — управление репозиториями Elastic Container Registry

Примечание

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

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

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

Чтобы использовать модуль в плейбуке, укажите: community.aws.ecs_ecr.

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

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

Краткое описание

  • Управление репозиториями Elastic Container Registry.

Требования

Следующие требования должны быть выполнены на хосте, выполняющем этот модуль.

  • python >= 3.6
  • boto3 >= 1.34.0
  • botocore >= 1.34.0

Параметры

Параметр

Комментарии

access_key

псевдонимы: aws_access_key_id, aws_access_key

строка

Идентификатор ключа доступа 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 в порядке убывания предпочтения.

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

Псевдоним aws_access_key_id добавлен в выпуске 5.1.0 для соответствия AWS SDK botocore.

aws_ca_bundle

путь

Путь к набору сертификатов ЦС, используемому для проверки SSL-сертификатов.

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

aws_config

словарь

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

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

debug_botocore_endpoint_logs

логическое значение

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

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

Варианты:

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

encryption_configuration

словарь

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

Конфигурация шифрования репозитория.

encryption_type

строка

Тип шифрования, который следует использовать.

Варианты:

  • "AES256" ← (по умолчанию)
  • "KMS"

kms_key

строка

Если encryption_type=KMS, укажите ключ KMS, используемый для шифрования.

Можно указать псевдоним, идентификатор или полный ARN ключа KMS.

endpoint_url

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

строка

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

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

force_absent

логическое значение

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

Если force_absent=true, репозиторий будет удалён, даже если в нём есть образы.

Варианты:

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

force_set_policy

логическое значение

Если force_set_policy=false, параметр предотвращает установку политики, которая помешала бы установить другую политику в будущем.

Варианты:

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

image_tag_mutability

строка

Настройка изменяемости репозитория (то есть возможности перезаписать уже существующий тег).

Варианты:

  • "mutable" ← (по умолчанию)
  • "immutable"

lifecycle_policy

json

JSON или словарь, представляющий новую политику жизненного цикла.

name

строка / обязательный

Имя репозитория.

policy

json

JSON или словарь, представляющий новую политику.

profile

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

строка

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

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

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

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

purge_lifecycle_policy

логическое значение

Если true, удалить политику жизненного цикла из репозитория.

По умолчанию — false.

Варианты:

  • false
  • true

purge_policy

логическое значение

Если true, удалить политику из репозитория.

По умолчанию — false.

Варианты:

  • false
  • true

region

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

строка

Регион AWS, который следует использовать.

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

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

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

registry_id

строка

Идентификатор учётной записи AWS, связанной с реестром.

Если не указан, предполагается использование реестра по умолчанию.

scan_on_push

логическое значение

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

Если true, после отправки образов в репозиторий они сканируются на наличие известных уязвимостей.

Варианты:

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

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key

строка

Секретный ключ доступа 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 в порядке убывания предпочтения.

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

Псевдоним aws_secret_access_key добавлен в выпуске 5.1.0 для соответствия AWS SDK botocore.

session_token

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

строка

Токен сеанса 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.

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

state

строка

Создать или удалить репозиторий.

Варианты:

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

validate_certs

логическое значение

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

Настоятельно не рекомендуется задавать validate_certs=false; в качестве альтернативы рассмотрите возможность указать aws_ca_bundle.

Варианты:

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

Примечания

Примечание

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

Примеры

# If the repository does not exist, it is created. If it does exist, would not
# affect any policies already on it.
- name: ecr-repo
  community.aws.ecs_ecr:
    name: super/cool

- name: destroy-ecr-repo
  community.aws.ecs_ecr:
    name: old/busted
    state: absent

- name: Cross account ecr-repo
  community.aws.ecs_ecr:
    registry_id: 123456789012
    name: cross/account

- name: set-policy as object
  community.aws.ecs_ecr:
    name: needs-policy-object
    policy:
      Version: '2008-10-17'
      Statement:
        - Sid: read-only
          Effect: Allow
          Principal:
            AWS: '{{ read_only_arn }}'
          Action:
            - ecr:GetDownloadUrlForLayer
            - ecr:BatchGetImage
            - ecr:BatchCheckLayerAvailability

- name: set-policy as string
  community.aws.ecs_ecr:
    name: needs-policy-string
    policy: "{{ lookup('template', 'policy.json.j2') }}"

- name: delete-policy
  community.aws.ecs_ecr:
    name: needs-no-policy
    purge_policy: true

- name: create immutable ecr-repo
  community.aws.ecs_ecr:
    name: super/cool
    image_tag_mutability: immutable

- name: set-lifecycle-policy
  community.aws.ecs_ecr:
    name: needs-lifecycle-policy
    scan_on_push: true
    lifecycle_policy:
      rules:
        - rulePriority: 1
          description: new policy
          selection:
            tagStatus: untagged
            countType: sinceImagePushed
            countUnit: days
            countNumber: 365
          action:
            type: expire

- name: purge-lifecycle-policy
  community.aws.ecs_ecr:
    name: needs-no-lifecycle-policy
    purge_lifecycle_policy: true

- name: set-encryption-configuration
  community.aws.ecs_ecr:
    name: uses-custom-kms-key
    encryption_configuration:
      encryption_type: KMS
      kms_key: custom-kms-key-alias

Возвращаемые значения

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

Ключ

Описание

created

логическое значение

Если значение истинно, репозиторий был создан

Возвращается: всегда

name

строка

Имя репозитория

Возвращается: state=absent

policy

словарь

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

Существующая, созданная или обновлённая политика репозитория.

Возвращается: state=present

repository

словарь

Созданный или обновлённый репозиторий

Возвращается: state=present

Пример: {"createdAt": "2017-01-17T08:41:32-06:00", "registryId": "123456789012", "repositoryArn": "arn:aws:ecr:us-east-1:123456789012:repository/ecr-test-1484664090", "repositoryName": "ecr-test-1484664090", "repositoryUri": "123456789012.dkr.ecr.us-east-1.amazonaws.com/ecr-test-1484664090"}

state

строка

Заявленное состояние репозитория (present, absent)

Возвращается: всегда

Авторы

  • David M. Lee (@leedm777)

Ссылки на коллекцию

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

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

Spec-Zone.ru

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