community.aws.aws_codebuild – Создание или удаление проекта AWS CodeBuild
Примечание
Этот плагин входит в коллекцию community.aws (версия 1.3.0).
Для его установки используйте: ansible-galaxy collection install community.aws.
Чтобы использовать его в книге задач, укажите: community.aws.aws_codebuild.
В версии 1.0.0: из community.aws
Описание
- Создание или удаление проектов CodeBuild на AWS, используемых для сборки артефактов кода из исходного кода.
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- boto
- boto3
- botocore
- python >= 2.6
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| artifacts словарь / обязательно | Информация о выходных артефактах сборки для проекта сборки. | ||
| location строка | Информация о расположении выходных артефактов сборки. При выборе типа S3, укажите здесь имя ведра. | ||
| name строка | Вместе с путем и типом_пространства_имен, шаблон, который AWS CodeBuild будет использовать для именования и хранения выходных артефактов. | ||
| namespace_type строка | Вместе с путем и именем, шаблон, который AWS CodeBuild будет использовать для определения имени и местоположения для хранения выходных артефактов. Принимает BUILD_ID и NONE. | ||
| packaging строка | Тип выходного артефакта сборки для создания на S3, может быть NONE для создания папки или ZIP для ZIP-файла. | ||
| path строка | Вместе с типом_пространства_имен и именем, шаблон, который 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. Только ключ '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 | ||
| cache словарь | Параметры кэширования для ускорения последующих сборок. | ||
| location строка / обязательно | Местоположение кэширования на S3. | ||
| type строка / обязательно | Тип кэша. Может быть NO_CACHE или S3. | ||
| debug_botocore_endpoint_logs логический |
| Используйте регистрирователь botocore.endpoint для анализа уникальных (а не общих) API-вызовов "ресурс:действие", выполненных во время задачи, выводя набор в ключ task results resource_actions. Используйте обратный вызов aws_resource_action для вывода полного списка, выполненного во время выполнения playbook. Также может быть использована переменная среды ANSIBLE_DEBUG_BOTOCORE_LOGS. | |
| 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. Если не задан, используется значение переменной среды 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 строка | Декларация спецификации сборки для использования для сборок в этом проекте сборки. Оставьте пустой, если она является частью проекта кода. | ||
| git_clone_depth целое число | При использовании git вы можете указать глубину клонирования как целое число здесь. | ||
| insecure_ssl логический |
| Включите этот флаг для игнорирования предупреждений SSL при подключении к исходному коду проекта. | |
| location строка | Информация о расположении исходного кода, который необходимо собрать. Для типа CODEPIPELINE местоположение не должно быть указано. | ||
| type строка / обязательно | Тип источника. Допустимы следующие значения: CODECOMMIT, CODEPIPELINE, GITHUB, S3, BITBUCKET, GITHUB_ENTERPRISE. | ||
| состояние строка |
| Создать или удалить проект сборки кода. | |
| теги список / элементы=словарь | Набор тегов для проекта сборки. | ||
| ключ строка | Имя тега. | ||
| значение строка | Значение тега. | ||
| timeout_in_minutes целое число | По умолчанию: 60 | Сколько времени CodeBuild должен ждать, прежде чем прервать любую сборку, которая не была отмечена как завершенная. | |
| validate_certs булево |
| Если установлено значение "нет", сертификаты SSL не будут проверяться для версий boto >= 2.6.0. | |
| vpc_config словарь | Настройка 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 Пример: мой_проект | ||
| service_role строка | всегда | Роль IAM, которая будет использоваться во время сборки для доступа к другим службам AWS. Пример: arn:aws:iam::123123123:role/codebuild-service-role | ||
| источник сложный | всегда | Информация об исходном коде для ввода сборки. | ||
| аутентификация сложный | при конфигурации | Информация о настройках авторизации для AWS CodeBuild для доступа к исходному коду, который нужно собрать. | ||
| build_spec строка | всегда | Декларация спецификации сборки, которую следует использовать для сборок в этом проекте сборки. | ||
| git_clone_depth целое число | при конфигурации | Глубина клонирования git | ||
| insecure_ssl булево | при конфигурации | Истина, если игнорировать предупреждения SSL. | ||
| местоположение строка | при конфигурации | Идентификатор расположения, в зависимости от типа источника. | ||
| тип строка | всегда | Тип репозитория Пример: CODEPIPELINE | ||
| теги список / элементы=строка | при конфигурации | Теги, добавленные к проекту | ||
| timeout_in_minutes целое число | всегда | Таймаут сборки в минутах Пример: 60 | ||
Авторы
- Stefan Horning (@stefanhorning) <horning@mediapeers.com>
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/community/aws/aws_codebuild_module.html