Spec-Zone.ru › Ansible

Модуль community.aws.codepipeline – Создание или удаление AWS CodePipelines

Примечание

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

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

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

Для использования в книге задач укажите: community.aws.codepipeline.

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

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

Описание

  • Создание или удаление CodePipeline в AWS.
  • До версии 5.0.0 этот модуль назывался community.aws.aws_codepipeline. Использование не изменилось.

Псевдонимы: aws_codepipeline

Требования

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

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

Параметры

Параметр

Комментарии

access_key

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

строка

ID ключа доступа 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 для соответствия SDK AWS botocore.

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

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

artifact_store

словарь / обязательно

Информация о расположении, где хранятся артефакты (в S3). Словарь с полями type и location.

location

строка

Имя ведра для артефактов.

type

строка

Тип хранилища артефактов (в настоящее время поддерживается только ‘S3’).

aws_ca_bundle

путь

Расположение файла CA-сертификатов для проверки 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 логгер для анализа уникальных (а не всех) "resource:action" API-вызовов, сделанных во время задачи, выводя набор в ключ resource_actions в результатах задачи. Используйте aws_resource_action обратный вызов для вывода в общий список, сделанный во время выполнения плейбука.

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

Возможные значения:

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

endpoint_url

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

строка

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

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

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

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

name

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

Имя CodePipeline.

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 и security_token.

region

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

строка

Используемый регион 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.

role_arn

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

ARN роли IAM, используемой при выполнении CodePipeline.

secret_key

псевдонимы: aws_secret_access_key, aws_secret_key, ec2_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, или 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

строка

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

stages

список / элементы=словарь / обязательно

Список этапов для выполнения в CodePipeline. Список словарей, содержащих имя и действия для каждого этапа.

actions

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

Список конфигураций действий для данного этапа.

См. документацию boto3 для полной документации по дочерним параметрам:

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/codepipeline.html#CodePipeline.Client.create_pipeline

name

строка

Имя этапа (шага) в CodePipeline.

state

строка

Создать или удалить CodePipeline.

Варианты:

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

validate_certs

булево

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

Установка validate_certs=false крайне не рекомендуется. В качестве альтернативы, рассмотрите возможность установки aws_ca_bundle вместо этого.

Варианты:

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

version

целое число

Номер версии CodePipeline. Этот номер автоматически увеличивается при обновлении CodePipeline.

Примечания

Примечание

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

Примеры

# Note: These examples do not set authentication details, see the AWS Guide for details.

# Example for creating a pipeline for continuous deploy of Github code to an ECS cluster (container)
- community.aws.codepipeline:
    name: my_deploy_pipeline
    role_arn: arn:aws:iam::123456:role/AWS-CodePipeline-Service
    artifact_store:
      type: S3
      location: my_s3_codepipline_bucket
    stages:
      - name: Get_source
        actions:
          -
            name: Git_pull
            actionTypeId:
              category: Source
              owner: ThirdParty
              provider: GitHub
              version: '1'
            outputArtifacts:
              - { name: my-app-source }
            configuration:
              Owner: mediapeers
              Repo: my_gh_repo
              PollForSourceChanges: 'true'
              Branch: master
              # Generate token like this:
              # https://docs.aws.amazon.com/codepipeline/latest/userguide/GitHub-rotate-personal-token-CLI.html
              # GH Link: https://github.com/settings/tokens
              OAuthToken: 'abc123def456'
            runOrder: 1
      - name: Build
        actions:
          -
            name: CodeBuild
            actionTypeId:
              category: Build
              owner: AWS
              provider: CodeBuild
              version: '1'
            inputArtifacts:
              - { name: my-app-source }
            outputArtifacts:
              - { name: my-app-build }
            configuration:
              # A project with that name needs to be setup on AWS CodeBuild already (use code_build module).
              ProjectName: codebuild-project-name
            runOrder: 1
      - name: ECS_deploy
        actions:
          -
            name: ECS_deploy
            actionTypeId:
              category: Deploy
              owner: AWS
              provider: ECS
              version: '1'
            inputArtifacts:
              - { name: vod-api-app-build }
            configuration:
              # an ECS cluster with that name needs to be setup on AWS ECS already (use ecs_cluster and ecs_service module)
              ClusterName: ecs-cluster-name
              ServiceName: ecs-cluster-service-name
              FileName: imagedefinitions.json
    region: us-east-1
    state: present

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

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

Ключ

Описание

pipeline

сложное

Возвращает словарь, описывающий конфигурацию CodePipeline.

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

artifact_store

сложное

Информация о том, где хранятся артефакты сборки.

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

encryption_key

строка

Ключ шифрования, используемый для шифрования хранилища артефактов, например, ключ AWS KMS.

Возвращается: при конфигурации

location

строка

Расположение хранилища артефактов (имя ведра s3).

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

Пример: "my_s3_codepipline_bucket"

type

строка

Тип хранилища артефактов, например, S3.

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

Пример: "S3"

name

строка

Имя CodePipeline.

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

Пример: "my_deploy_pipeline"

role_arn

строка

ARN роли IAM, прикрепленной к CodePipeline.

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

Пример: "arn:aws:iam::123123123:role/codepipeline-service-role"

stages

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

Список этапов, настроенных для данного CodePipeline.

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

version

целое число

Номер версии CodePipeline.

Это число автоматически увеличивается при изменении параметров CodePipeline.

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

Авторы

  • Stefan Horning (@stefanhorning)

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

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

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

Spec-Zone.ru

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