community.aws.aws_codebuild – Создание или удаление проекта AWS CodeBuild
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Чтобы использовать его в playbook, укажите: community.aws.aws_codebuild.
Новое в версии 1.0.0: of community.aws
Описание
- Создание или удаление проектов CodeBuild на AWS, используемых для сборки артефактов кода из исходного кода.
Требования
Ниже перечислены требования, необходимые на хосте, который выполняет этот модуль.
- boto
- boto3
- botocore
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| artifacts словарь / обязательно | Информация о результатах сборки проекта. | ||
| location строка | Информация о расположении результатов сборки. При выборе типа S3, укажите здесь имя ведра. | ||
| name строка | Вместе с параметрами path и namespace_type определяет шаблон, который AWS CodeBuild будет использовать для именования и хранения артефактов вывода. | ||
| namespace_type строка | Вместе с параметрами path и name определяет шаблон, который AWS CodeBuild будет использовать для определения имени и расположения для хранения артефактов вывода. Поддерживает BUILD_ID и NONE. | ||
| packaging строка | Тип артефактов сборки, которые будут созданы на S3. Может быть NONE для создания папки или ZIP для создания ZIP-файла. | ||
| path строка | Вместе с namespace_type и name определяет шаблон, который AWS CodeBuild будет использовать для именования и хранения артефактов вывода. Используется для пути в ведре S3, когда тип S3. | ||
| type строка / обязательно | Тип результатов сборки артефактов. Может быть одним из следующих: CODEPIPELINE, NO_ARTIFACTS, S3. | ||
| 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 Bundle для проверки SSL-сертификатов. Используется только для модулей, основанных на boto3. Примечание: CA Bundle считывается со стороны «модуля» и может потребоваться его явное копирование с контроллера, если он не запускается локально. | ||
| aws_config словарь | Словарь для изменения конфигурации botocore. Параметры можно найти по адресу https://botocore.amazonaws.com/v1/documentation/api/latest/reference/config.html#botocore.config.Config. Для модулей boto используется только ключ «user_agent». См. 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 | ||
| cache словарь | Параметры кэширования для ускорения последующих сборок. | ||
| location строка / обязательно | Расположение кэша на S3. | ||
| type строка / обязательно | Тип кэша. Может быть NO_CACHE или S3. | ||
| debug_botocore_endpoint_logs логический тип |
| Использовать логгер botocore.endpoint для анализа уникальных («ресурс:действие») API-вызовов, произведенных во время задачи, выводить их в ключ resource_actions результатов задачи. Используйте обратный вызов aws_resource_action для вывода полного списка, произведенного во время выполнения игры. | |
| description строка | Описание проекта CodeBuild. | ||
| ec2_url строка | URL для подключения к EC2 или вашей облачной среде Eucalyptus (по умолчанию модуль использует конечные точки EC2). Игнорируется для модулей, где регион требуется. Должен быть указан для всех остальных модулей, если регион не используется. Если не задано, используется значение переменной окружения EC2_URL, если она есть. псевдонимы: aws_endpoint_url, endpoint_url | ||
| encryption_key строка | Ключ управляющего мастера (CMK) AWS Key Management Service (AWS KMS), используемый для шифрования артефактов вывода сборки. | ||
| environment словарь | Информация об окружении сборки проекта. | ||
| compute_type строка / обязательно | Информация о вычислительных ресурсах, которые будет использовать проект сборки. Доступные значения включают: BUILD_GENERAL1_SMALL, BUILD_GENERAL1_MEDIUM, BUILD_GENERAL1_LARGE. | ||
| environment_variables строка | Набор переменных окружения, которые должны быть доступны для сборок проекта. Список словарей с полями name и value. Пример: { name: 'MY_ENV_VARIABLE', value: 'test' } | ||
| image строка / обязательно | Идентификатор Docker-изображения, которое нужно использовать для этого проекта сборки. | ||
| privileged_mode строка | Включает возможность запуска демона Docker внутри контейнера Docker. Установите в значение true только если проект сборки используется для создания Docker-изображений. | ||
| type строка / обязательно | Тип среды сборки для использования в проекте. Обычно LINUX_CONTAINER. | ||
| name строка / обязательно | Имя проекта CodeBuild. | ||
| 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 security token. Если не задан, используется значение переменной окружения AWS_SECURITY_TOKEN или EC2_SECURITY_TOKEN. Если задан параметр profile, этот параметр игнорируется. Использование параметров security_token и profile одновременно устарело и будет сделано взаимоисключающим после 2022-06-01. псевдонимы: aws_security_token, access_token | ||
| service_role строка | ARN AWS IAM роли, которая позволяет AWS CodeBuild взаимодействовать с зависимыми AWS-сервисами от имени AWS-аккаунта. | ||
| source словарь / обязательно | Настройка сервиса и расположения для исходного кода сборки. | ||
| buildspec строка | Дескриптор buildspec для использования в сборках этого проекта сборки. Оставьте пустым, если он является частью проекта кода. | ||
| git_clone_depth целое число | При использовании git, вы можете указать глубину клонирования как целое число. | ||
| insecure_ssl логический тип |
| Включите этот флаг, чтобы проигнорировать предупреждения SSL при подключении к исходному коду проекта. | |
| location строка | Информация о расположении исходного кода, подлежащего сборке. Для типа CODEPIPELINE параметр location не должен быть указан. | ||
| type строка / обязательно | Тип исходного кода. Допускается один из следующих: CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE. | ||
| состояние строка |
| Создать или удалить проект сборки кода. | |
| теги список / элементы=словарь | Набор тегов для проекта сборки. | ||
| ключ строка | Имя тега. | ||
| значение строка | Значение тега. | ||
| срок_ожидания_в_минутах целое_число | Значение по умолчанию: 60 | Сколько времени CodeBuild должен ждать, пока не истечет время ожидания любой сборки, которая не была отмечена как завершённая. | |
| проверять_сертификаты булево |
| При значении "нет" сертификаты SSL не будут проверяться для версий boto >= 2.6.0. | |
| конфигурация_vpc словарь | Конфигурация VPC позволяет AWS CodeBuild получать доступ к ресурсам в Amazon VPC. | ||
Примечания
Примечание
- Подробную информацию о параметрах и возвращаемых значениях см. на странице http://boto3.readthedocs.io/en/latest/reference/services/codebuild.html.
- Если параметры не заданы в модуле, можно использовать следующие переменные среды в порядке убывания приоритета
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
Примеры
# Note: These examples do not set authentication details, see the AWS Guide for details.
- community.aws.aws_codebuild:
name: my_project
description: My nice little project
service_role: "arn:aws:iam::123123:role/service-role/code-build-service-role"
source:
# Possible values: BITBUCKET, CODECOMMIT, CODEPIPELINE, GITHUB, S3
type: CODEPIPELINE
buildspec: ''
artifacts:
namespaceType: NONE
packaging: NONE
type: CODEPIPELINE
name: my_project
environment:
computeType: BUILD_GENERAL1_SMALL
privilegedMode: "true"
image: "aws/codebuild/docker:17.09.0"
type: LINUX_CONTAINER
environmentVariables:
- { name: 'PROFILE', value: 'staging' }
encryption_key: "arn:aws:kms:us-east-1:123123:alias/aws/s3"
region: us-east-1
state: present
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для этого модуля:
| Ключ | Возвращенное | Описание | ||
|---|---|---|---|---|
| проект сложный | успех | Возвращает словарь, описывающий конфигурацию проекта кода. | ||
| arn строка | всегда | ARN проекта CodeBuild Пример: arn:aws:codebuild:us-east-1:123123123:project/vod-api-app-builder | ||
| артефакты сложный | всегда | Информация об выходных артефактах сборки | ||
| местоположение строка | при конфигурации | Местоположение выходных артефактов сборки | ||
| тип строка | всегда | Тип артефакта сборки. Пример: CODEPIPELINE | ||
| кеш словарь | при конфигурации | Настройки кеша для проекта сборки. | ||
| создан строка | всегда | Отметка времени создания проекта Пример: 2018-04-17T16:56:03.245000+02:00 | ||
| описание строка | всегда | Описание проекта сборки Пример: Мой замечательный проект | ||
| среда словарь | всегда | Настройки среды для сборки | ||
| имя строка | всегда | Имя проекта CodeBuild Пример: мой_проект | ||
| роль_сервиса строка | всегда | Роль IAM, используемая во время сборки для доступа к другим службам AWS. Пример: arn:aws:iam::123123123:role/codebuild-service-role | ||
| источник сложный | всегда | Информация о исходном коде для сборки. | ||
| аутентификация сложный | при конфигурации | Информация о настройках авторизации для доступа AWS CodeBuild к исходному коду, подлежащему сборке. | ||
| спецификация_сборки строка | всегда | Спецификация сборки для использования в сборках в этом проекте сборки. | ||
| глубина_клонирования_git целое_число | при конфигурации | Глубина клонирования git | ||
| небезопасное_ssl булево | при конфигурации | Истина, если установлены настройки для игнорирования предупреждений SSL. | ||
| местоположение строка | при конфигурации | Идентификатор местоположения, в зависимости от типа источника. | ||
| тип строка | всегда | Тип репозитория Пример: CODEPIPELINE | ||
| теги список / элементы=строка | при конфигурации | Теги, добавленные к проекту | ||
| срок_ожидания_в_минутах целое_число | всегда | Время ожидания сборки в минутах Пример: 60 | ||
Авторы
- Stefan Horning (@stefanhorning) <horning@mediapeers.com>
© 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/aws_codebuild_module.html