Spec-Zone.ru › AWS CLI v2

[ aws . codebuild ]

create-project

Описание

Создаёт проект сборки.

См. также: Документация API AWS

Синтаксис

  create-project
--name <value>
[--description <value>]
--source <value>
[--secondary-sources <value>]
[--source-version <value>]
[--secondary-source-versions <value>]
--artifacts <value>
[--secondary-artifacts <value>]
[--cache <value>]
--environment <value>
--service-role <value>
[--timeout-in-minutes <value>]
[--queued-timeout-in-minutes <value>]
[--encryption-key <value>]
[--tags <value>]
[--vpc-config <value>]
[--badge-enabled | --no-badge-enabled]
[--logs-config <value>]
[--file-system-locations <value>]
[--build-batch-config <value>]
[--concurrent-build-limit <value>]
[--auto-retry-limit <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]

Параметры

--name (строка)

Имя проекта сборки.

--description (строка)

Описание, облегчающее идентификацию проекта сборки.

--source (структура)

Информация о входном источнике кода сборки для проекта сборки.

type -> (строка)

Тип хранилища, содержащего исходный код, подлежащий сборке. Допустимые значения:

  • BITBUCKET : Исходный код находится в репозитории Bitbucket.
  • CODECOMMIT : Исходный код находится в репозитории CodeCommit.
  • CODEPIPELINE : Параметры исходного кода указаны в действии источника конвейера в CodePipeline.
  • GITHUB : Исходный код находится в репозитории GitHub.
  • GITHUB_ENTERPRISE : Исходный код находится в репозитории GitHub Enterprise Server.
  • GITLAB : Исходный код находится в репозитории GitLab.
  • GITLAB_SELF_MANAGED : Исходный код находится в самообслуживаемом репозитории GitLab.
  • NO_SOURCE : Проект не содержит входного исходного кода.
  • S3 : Исходный код находится в ведре Amazon S3.

location -> (строка)

Информация о расположении исходного кода, подлежащего сборке. Допустимые значения:

  • Для параметров исходного кода, указанных в действии источника конвейера в CodePipeline, location не следует указывать. Если он указан, CodePipeline его игнорирует. Это связано с тем, что CodePipeline использует параметры в действии источника конвейера вместо этого значения.
  • Для исходного кода в репозитории CodeCommit, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec (например, https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name> ).
  • Для исходного кода в входном ведре Amazon S3, одно из следующих.
    • Путь к файлу ZIP, содержащему исходный код (например, <bucket-name>/<path>/<object-name>.zip ).
    • Путь к папке, содержащей исходный код (например, <bucket-name>/<path-to-source-code>/<folder>/ ).
  • Для исходного кода в репозитории GitHub, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вы должны подключить свою учётную запись Amazon Web Services к вашей учётной записи GitHub. Используйте консоль CodeBuild для начала создания проекта сборки. Когда вы используете консоль для подключения (или повторного подключения) с GitHub, на странице GitHub Authorize application , для Organization access выберите Request access рядом с каждым репозиторием, которому вы хотите разрешить доступ CodeBuild, а затем выберите Authorize application . (После подключения к вашей учётной записи GitHub вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth, равное OAUTH.
  • Для исходного кода в репозитории GitLab или самообслуживаемом репозитории GitLab, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вы должны подключить свою учётную запись Amazon Web Services к вашей учётной записи GitLab. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitLab на странице Connections Authorize application выберите Authorize. Затем на странице CodeConnections Create GitLab connection выберите Connect to GitLab. (После подключения к вашей учётной записи GitLab вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild переопределить стандартное подключение и использовать это подключение вместо него, установите значение объекта auth, равное CODECONNECTIONS, в объекте source.
  • Для исходного кода в репозитории Bitbucket, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вы должны подключить свою учётную запись Amazon Web Services к вашей учётной записи Bitbucket. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к Bitbucket на странице Bitbucket Confirm access to your account выберите Grant access. (После подключения к вашей учётной записи Bitbucket вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth, равное OAUTH.

Если вы укажете CODEPIPELINE для свойства Type, не указывайте это свойство. Для всех других типов вы должны указать Location.

gitCloneDepth -> (целое число)

Информация о глубине клонирования Git для проекта сборки.

gitSubmodulesConfig -> (структура)

Информация о настройке Git подмодулей для проекта сборки.

fetchSubmodules -> (логическое значение)

Установите в значение true, чтобы извлечь Git подмодули для вашего проекта сборки CodeBuild.

buildspec -> (строка)

Объявление файла buildspec для использования для сборок в этом проекте сборки.

Если это значение установлено, оно может быть либо встроенным определением buildspec, путём к альтернативному файлу buildspec относительно значения встроенной переменной среды CODEBUILD_SRC_DIR, или путём к ведру S3. Ведро должно находиться в том же регионе Amazon Web Services, что и проект сборки. Укажите файл buildspec, используя его ARN (например, arn:aws:s3:::my-codebuild-sample2/buildspec.yml ). Если это значение не предоставлено или установлено в пустую строку, исходный код должен содержать файл buildspec в корневой директории. Для получения дополнительной информации см. Имя файла buildspec и расположение хранилища.

auth -> (структура)

Информация об настройках авторизации для CodeBuild для доступа к исходному коду, подлежащему сборке.

type -> (строка)

Тип авторизации для использования. Допустимые варианты: OAUTH, CODECONNECTIONS или SECRETS_MANAGER.

resource -> (строка)

Значение ресурса, применяемое к указанному типу авторизации.

reportBuildStatus -> (логическое значение)

Установите в значение true, чтобы сообщать о состоянии начала и завершения сборки поставщику исходного кода. Этот параметр действителен только при использовании GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, GitLab или Bitbucket в качестве поставщика исходного кода. Если это значение установлено и используется другой поставщик исходного кода, вызывается ошибка invalidInputException.

Для возможности сообщения о состоянии сборки поставщику исходного кода, пользователь, связанный с поставщиком исходного кода, должен иметь права записи в репозитории. Если у пользователя нет прав записи, состояние сборки не может быть обновлено. Для получения дополнительной информации см. Доступ поставщика исходного кода в Руководстве пользователя CodeBuild.

Состояние сборки, инициированной webhook, всегда сообщается поставщику исходного кода.

Если сборки вашего проекта инициируются webhook, вы должны отправить новую версию в репозиторий, чтобы изменение этого параметра вступило в силу.

buildStatusConfig -> (структура)

Содержит информацию, определяющую, как проект сборки сообщает о состоянии сборки поставщику исходного кода. Этот параметр используется только в случае поставщика исходного кода GITHUB, GITHUB_ENTERPRISE или BITBUCKET.

context -> (строка)

Указывает контекст состояния сборки, которое CodeBuild отправляет поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра name в статусе коммита Bitbucket. Для получения дополнительной информации см. build в документации API Bitbucket.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра context в статусе коммита GitHub. Для получения дополнительной информации см. Создание статуса коммита в руководстве разработчика GitHub.

targetUrl -> (строка)

Указывает целевой URL состояния сборки, который CodeBuild отправляет поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра url в статусе коммита Bitbucket. Для получения дополнительной информации см. build в документации API Bitbucket.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра target_url в статусе коммита GitHub. Для получения дополнительной информации см. Создание статуса коммита в руководстве разработчика GitHub.

insecureSsl -> (логическое значение)

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

sourceIdentifier -> (строка)

Идентификатор для источника этого проекта. Идентификатор может содержать только буквенно-цифровые символы и символы подчеркивания, и должен быть менее 128 символов в длину.

Сокращённый синтаксис:

type=string,location=string,gitCloneDepth=integer,gitSubmodulesConfig={fetchSubmodules=boolean},buildspec=string,auth={type=string,resource=string},reportBuildStatus=boolean,buildStatusConfig={context=string,targetUrl=string},insecureSsl=boolean,sourceIdentifier=string

Синтаксис JSON:

{
  "type": "CODECOMMIT"|"CODEPIPELINE"|"GITHUB"|"GITLAB"|"GITLAB_SELF_MANAGED"|"S3"|"BITBUCKET"|"GITHUB_ENTERPRISE"|"NO_SOURCE",
  "location": "string",
  "gitCloneDepth": integer,
  "gitSubmodulesConfig": {
    "fetchSubmodules": true|false
  },
  "buildspec": "string",
  "auth": {
    "type": "OAUTH"|"CODECONNECTIONS"|"SECRETS_MANAGER",
    "resource": "string"
  },
  "reportBuildStatus": true|false,
  "buildStatusConfig": {
    "context": "string",
    "targetUrl": "string"
  },
  "insecureSsl": true|false,
  "sourceIdentifier": "string"
}

--secondary-sources (список)

Массив объектов ProjectSource.

(структура)

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

тип -> (строка)

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

  • BITBUCKET : Исходный код находится в репозитории Bitbucket.
  • CODECOMMIT : Исходный код находится в репозитории CodeCommit.
  • CODEPIPELINE : Параметры исходного кода указаны в действии «исходный код» конвейера CodePipeline.
  • GITHUB : Исходный код находится в репозитории GitHub.
  • GITHUB_ENTERPRISE : Исходный код находится в репозитории GitHub Enterprise Server.
  • GITLAB : Исходный код находится в репозитории GitLab.
  • GITLAB_SELF_MANAGED : Исходный код находится в управляемом пользователем репозитории GitLab.
  • NO_SOURCE : Проект не имеет исходного кода.
  • S3 : Исходный код находится в ведре Amazon S3.

местоположение -> (строка)

Информация о местоположении исходного кода, который будет собираться. Допустимые значения включают:

  • Для параметров исходного кода, указанных в действии «исходный код» конвейера CodePipeline, location не должно быть указано. Если оно указано, CodePipeline его игнорирует. Это связано с тем, что CodePipeline использует параметры действия «исходный код» конвейера вместо этого значения.
  • Для исходного кода в репозитории CodeCommit, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec (например, https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name> ).
  • Для исходного кода в ведре ввода Amazon S3, одно из следующих.
    • Путь к файлу ZIP, содержащему исходный код (например, <bucket-name>/<path>/<object-name>.zip ).
    • Путь к папке, содержащей исходный код (например, <bucket-name>/<path-to-source-code>/<folder>/ ).
  • Для исходного кода в репозитории GitHub, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи GitHub. Используйте консоль CodeBuild для начала создания проекта сборки. Когда вы используете консоль для подключения (или повторного подключения) к GitHub, на странице GitHub Authorize application, для Organization access, выберите Request access рядом с каждым репозиторием, которому вы хотите разрешить CodeBuild иметь доступ, а затем выберите Authorize application. (После подключения к вашей учетной записи GitHub, вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth для свойства type в значение OAUTH.
  • Для исходного кода в репозитории GitLab или управляемом пользователем репозитории GitLab, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи GitLab. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitLab, на странице подключений Authorize application, выберите Authorize . Затем на странице CodeConnections Create GitLab connection, выберите Connect to GitLab. (После подключения к вашей учетной записи GitLab, вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild переопределить стандартное подключение и использовать это подключение вместо него, установите значение объекта auth для свойства type в значение CODECONNECTIONS в объекте source.
  • Для исходного кода в репозитории Bitbucket, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи Bitbucket. Используйте консоль CodeBuild для начала создания проекта сборки. Когда вы используете консоль для подключения (или повторного подключения) к Bitbucket, на странице Bitbucket Confirm access to your account, выберите Grant access. (После подключения к вашей учетной записи Bitbucket, вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth для свойства type в значение OAUTH.

Если вы укажите CODEPIPELINE для свойства Type, не указывайте это свойство. Для всех других типов вы должны указать Location.

gitCloneDepth -> (целое число)

Информация о глубине клонирования Git для проекта сборки.

gitSubmodulesConfig -> (структура)

Информация о конфигурации Git подмодулей для проекта сборки.

fetchSubmodules -> (булево)

Установите в значение true, чтобы получить подмодули Git для вашего проекта сборки CodeBuild.

buildspec -> (строка)

Объявление файла buildspec, используемого для сборок в этом проекте сборки.

Если это значение задано, оно может быть либо встроенным определением buildspec, либо путем к альтернативному файлу buildspec, относительно значения встроенной переменной среды CODEBUILD_SRC_DIR, либо путем к ведру S3. Ведро должно находиться в той же области Amazon Web Services, что и проект сборки. Укажите файл buildspec, используя его ARN (например, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). Если это значение не предоставлено или установлено в пустую строку, исходный код должен содержать файл buildspec в корневой директории. Дополнительную информацию см. в разделе Имя и расположение файла buildspec.

auth -> (структура)

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

тип -> (строка)

Тип авторизации для использования. Допустимые варианты: OAUTH, CODECONNECTIONS или SECRETS_MANAGER.

ресурс -> (строка)

Значение ресурса, применимое к указанному типу авторизации.

reportBuildStatus -> (булево)

Установите в значение true, чтобы сообщать о статусе запуска и завершения сборки вашему поставщику исходного кода. Этот параметр допустим только в том случае, если ваш поставщик исходного кода GitHub, GitHub Enterprise, GitLab, GitLab Self Managed или Bitbucket. Если он установлен и вы используете другого поставщика, будет выброшено исключение invalidInputException.

Чтобы иметь возможность сообщать статус сборки поставщику исходного кода, пользователь, связанный с поставщиком исходного кода, должен иметь права записи в репозиторий. Если у пользователя нет прав на запись, статус сборки не может быть обновлен. Дополнительную информацию см. в разделе Доступ поставщика исходного кода в Руководстве пользователя CodeBuild.

Статус сборки, запущенной через веб-хук, всегда сообщается вашему поставщику исходного кода.

Если сборки вашего проекта запускаются через веб-хук, вам необходимо отправить новый коммит в репозиторий, чтобы изменения в этом свойстве вступили в силу.

buildStatusConfig -> (структура)

Содержит информацию, определяющую, как проект сборки сообщает статус сборки поставщику исходного кода. Этот параметр используется только при использовании поставщика исходного кода GITHUB , GITHUB_ENTERPRISE или BITBUCKET.

контекст -> (строка)

Указывает контекст статуса сборки, который CodeBuild отправляет поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра name в статусе коммита Bitbucket. Дополнительную информацию см. в документации API Bitbucket по сборке.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра context в статусе коммита GitHub. Дополнительную информацию см. в руководстве разработчика GitHub по созданию статуса коммита.

targetUrl -> (строка)

Указывает целевой URL статуса сборки, который CodeBuild отправляет поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра url в статусе коммита Bitbucket. Дополнительную информацию см. в документации API Bitbucket по сборке.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра target_url в статусе коммита GitHub. Дополнительную информацию см. в руководстве разработчика GitHub по созданию статуса коммита.

insecureSsl -> (булево)

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

sourceIdentifier -> (строка)

Идентификатор для исходного кода этого проекта. Идентификатор может содержать только буквенно-цифровые символы и символы подчеркивания и должен быть меньше 128 символов.

Сокращенный синтаксис:

type=string,location=string,gitCloneDepth=integer,gitSubmodulesConfig={fetchSubmodules=boolean},buildspec=string,auth={type=string,resource=string},reportBuildStatus=boolean,buildStatusConfig={context=string,targetUrl=string},insecureSsl=boolean,sourceIdentifier=string ...

Синтаксис JSON:

[
  {
    "type": "CODECOMMIT"|"CODEPIPELINE"|"GITHUB"|"GITLAB"|"GITLAB_SELF_MANAGED"|"S3"|"BITBUCKET"|"GITHUB_ENTERPRISE"|"NO_SOURCE",
    "location": "string",
    "gitCloneDepth": integer,
    "gitSubmodulesConfig": {
      "fetchSubmodules": true|false
    },
    "buildspec": "string",
    "auth": {
      "type": "OAUTH"|"CODECONNECTIONS"|"SECRETS_MANAGER",
      "resource": "string"
    },
    "reportBuildStatus": true|false,
    "buildStatusConfig": {
      "context": "string",
      "targetUrl": "string"
    },
    "insecureSsl": true|false,
    "sourceIdentifier": "string"
  }
  ...
]

--source-version (строка)

Версия входных данных сборки, которые нужно собрать для этого проекта. Если не указано, используется последняя версия. Если указано, это должно быть одно из:

  • Для CodeCommit: идентификатор коммита, ветка или Git тег для использования.
  • Для GitHub: идентификатор коммита, идентификатор запроса на вытягивание, имя ветки или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан идентификатор запроса на вытягивание, он должен использовать формат pr/pull-request-ID (например, pr/25). Если указано имя ветки, используется идентификатор HEAD коммита ветки. Если не указано, используется идентификатор HEAD коммита ветки по умолчанию.
  • Для GitLab: идентификатор коммита, ветка или Git тег для использования.
  • Для Bitbucket: идентификатор коммита, имя ветки или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветки, используется идентификатор HEAD коммита ветки. Если не указано, используется идентификатор HEAD коммита ветки по умолчанию.
  • Для Amazon S3: идентификатор версии объекта, представляющего файл ввода ZIP сборки для использования.

Если sourceVersion указан на уровне сборки, эта версия имеет приоритет над этой sourceVersion (на уровне проекта).

Дополнительную информацию см. в разделе Пример версии исходного кода с CodeBuild в Руководстве пользователя CodeBuild.

--secondary-source-versions (список)

Массив объектов ProjectSourceVersion. Если secondarySourceVersions указан на уровне сборки, то он имеет приоритет перед этими secondarySourceVersions (на уровне проекта).

(структура)

Идентификатор источника и соответствующая версия.

sourceIdentifier -> (строка)

Идентификатор источника в проекте сборки. Идентификатор может содержать только буквенно-цифровые символы и символы нижнего подчеркивания, а также должен быть меньше 128 символов в длину.

sourceVersion -> (строка)

Версия источника для соответствующего идентификатора источника. Если указано, должно быть одним из:

  • Для CodeCommit: идентификатор коммита, ветка или Git-тег для использования.
  • Для GitHub: идентификатор коммита, идентификатор запроса на вытягивание, имя ветки или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан идентификатор запроса на вытягивание, он должен использовать формат pr/pull-request-ID (например, pr/25 ). Если указано имя ветки, используется идентификатор коммита HEAD этой ветки. Если не указано, используется идентификатор коммита HEAD по умолчанию.
  • Для GitLab: идентификатор коммита, ветка или Git-тег для использования.
  • Для Bitbucket: идентификатор коммита, имя ветки или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветки, используется идентификатор коммита HEAD этой ветки. Если не указано, используется идентификатор коммита HEAD по умолчанию.
  • Для Amazon S3: идентификатор версии объекта, представляющего ZIP-архив входных данных сборки для использования.

Дополнительную информацию см. в примере версии источника с CodeBuild в Руководстве пользователя CodeBuild.

Сокращенная синтаксическая запись:

sourceIdentifier=string,sourceVersion=string ...

Синтаксис JSON:

[
  {
    "sourceIdentifier": "string",
    "sourceVersion": "string"
  }
  ...
]

--artifacts (структура)

Информация о выходных артефактах сборки для проекта сборки.

type -> (строка)

Тип артефакта выходных данных сборки. Допустимые значения включают:

  • CODEPIPELINE : Проект сборки генерирует выходные данные сборки через CodePipeline.

Примечание

Тип CODEPIPELINE не поддерживается для secondaryArtifacts.
  • NO_ARTIFACTS : Проект сборки не генерирует выходные данные сборки.
  • S3 : Проект сборки хранит выходные данные сборки в Amazon S3.

location -> (строка)

Информация о расположении артефакта выходных данных сборки:

  • Если type установлено в CODEPIPELINE, CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет расположением своих выходных данных сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS, это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3, это имя выходного хранилища.

path -> (строка)

Вместе с namespaceType и name, шаблон, который CodeBuild использует для именования и хранения артефакта выходных данных:

  • Если type установлено в CODEPIPELINE, CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет именами своих выходных данных сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS, это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3, это путь к артефакту выходных данных. Если path не указан, path не используется.

Например, если path установлено в MyArtifacts, namespaceType установлено в NONE, а name установлено в MyArtifact.zip, артефакт выходных данных хранится в выходном хранилище по адресу MyArtifacts/MyArtifact.zip.

namespaceType -> (строка)

Вместе с path и name, шаблон, который CodeBuild использует для определения имени и расположения для хранения артефакта выходных данных:

  • Если type установлено в CODEPIPELINE, CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет именами своих выходных данных сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS, это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3, допустимые значения включают:
    • BUILD_ID : Включить идентификатор сборки в расположение артефакта выходных данных сборки.
    • NONE : Не включать идентификатор сборки. Это значение по умолчанию, если namespaceType не указано.

Например, если path установлено в MyArtifacts, namespaceType установлено в BUILD_ID, а name установлено в MyArtifact.zip, артефакт выходных данных хранится в MyArtifacts/<build-ID>/MyArtifact.zip.

name -> (строка)

Вместе с path и namespaceType, шаблон, который CodeBuild использует для именования и хранения артефакта выходных данных:

  • Если type установлено в CODEPIPELINE, CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет именами своих выходных данных сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS, это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3, это имя объекта артефакта выходных данных. Если вы установите имя на прямой слеш ("/"), артефакт хранится в корневом каталоге выходного хранилища.

Например:

  • Если path установлено в MyArtifacts, namespaceType установлено в BUILD_ID, и name установлено в MyArtifact.zip, артефакт выходных данных хранится в MyArtifacts/<build-ID>/MyArtifact.zip.
  • Если path пустое, namespaceType установлено в NONE, а name установлено в “/”, артефакт выходных данных хранится в корневом каталоге выходного хранилища.
  • Если path установлено в MyArtifacts, namespaceType установлено в BUILD_ID, и name установлено в “/”, артефакт выходных данных хранится в MyArtifacts/<build-ID>.

packaging -> (строка)

Тип артефакта выходных данных сборки, который нужно создать:

  • Если type установлено в CODEPIPELINE, CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет артефактами выходных данных сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS, это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3, допустимые значения включают:
    • NONE : CodeBuild создает в выходном хранилище папку, содержащую выходные данные сборки. Это значение по умолчанию, если packaging не указано.
    • ZIP : CodeBuild создает в выходном хранилище ZIP-архив, содержащий выходные данные сборки.

overrideArtifactName -> (логическое)

Если этот флаг установлен, имя, указанное в файле buildspec, переопределяет имя артефакта. Имя, указанное в файле buildspec, вычисляется во время сборки и использует язык командной оболочки. Например, вы можете добавлять дату и время к имени артефакта, чтобы оно всегда было уникальным.

encryptionDisabled -> (логическое)

Установите значение true, если вы не хотите шифровать артефакты выходных данных. Этот параметр допустим только если тип ваших артефактов — Amazon S3. Если он установлен с другим типом артефактов, будет сгенерировано исключение invalidInputException.

artifactIdentifier -> (строка)

Идентификатор этого определения артефакта.

bucketOwnerAccess -> (строка)

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

Примечание

Для использования этого параметра ваша роль службы CodeBuild должна иметь разрешение s3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для хранилища.

Этот параметр может иметь следующие значения:

NONE

Владелец хранилища не имеет доступа к объектам. Это значение по умолчанию.

READ_ONLY

Владелец хранилища имеет доступ для чтения к объектам. Загружающий аккаунт сохраняет владение объектами.

FULL

Владелец хранилища имеет полный доступ к объектам. Владение объектами определяется следующими критериями:

  • Если хранилище настроено с параметром Bucket owner preferred, владелец хранилища владеет объектами. Загружающий аккаунт будет иметь доступ к объектам в соответствии с политикой хранилища.
  • В противном случае загружающий аккаунт сохраняет владение объектами.

Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление владение загруженными объектами с помощью S3 Object Ownership в Руководстве пользователя Amazon Simple Storage Service.

Сокращенная синтаксическая запись:

type=string,location=string,path=string,namespaceType=string,name=string,packaging=string,overrideArtifactName=boolean,encryptionDisabled=boolean,artifactIdentifier=string,bucketOwnerAccess=string

Синтаксис JSON:

{
  "type": "CODEPIPELINE"|"S3"|"NO_ARTIFACTS",
  "location": "string",
  "path": "string",
  "namespaceType": "NONE"|"BUILD_ID",
  "name": "string",
  "packaging": "NONE"|"ZIP",
  "overrideArtifactName": true|false,
  "encryptionDisabled": true|false,
  "artifactIdentifier": "string",
  "bucketOwnerAccess": "NONE"|"READ_ONLY"|"FULL"
}

--secondary-artifacts (список)

Массив объектов ProjectArtifacts.

(структура)

Информация о результатах сборки для проекта сборки.

тип -> (строка)

Тип результата сборки. Допустимые значения включают:

  • CODEPIPELINE : Проект сборки генерирует результаты сборки через CodePipeline.

Примечание

Тип CODEPIPELINE не поддерживается для secondaryArtifacts .
  • NO_ARTIFACTS : Проект сборки не генерирует результаты сборки.
  • S3 : Проект сборки хранит результаты сборки в Amazon S3.

местоположение -> (строка)

Информация о расположении результатов сборки:

  • Если type установлено в значение CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет расположением результатов сборки вместо CodeBuild.
  • Если type установлено в значение NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не генерируются.
  • Если type установлено в значение S3 , это имя выходного хранилища.

путь -> (строка)

Вместе с namespaceType и name, шаблон, который CodeBuild использует для именования и хранения артефакта результатов сборки:

  • Если type установлено в значение CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет именами результатов сборки вместо CodeBuild.
  • Если type установлено в значение NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не генерируются.
  • Если type установлено в значение S3 , это путь к артефакту результатов сборки. Если path не указан, path не используется.

Например, если path установлено в значение MyArtifacts , namespaceType установлено в значение NONE , и name установлено в значение MyArtifact.zip , артефакт результатов сборки хранится в выходном хранилище по пути MyArtifacts/MyArtifact.zip .

типПространстваИмен -> (строка)

Вместе с path и name, шаблон, который CodeBuild использует для определения имени и расположения хранения артефакта результатов сборки:

  • Если type установлено в значение CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет именами результатов сборки вместо CodeBuild.
  • Если type установлено в значение NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не генерируются.
  • Если type установлено в значение S3 , допустимые значения включают:
    • BUILD_ID : Включить идентификатор сборки в расположение артефакта результатов сборки.
    • NONE : Не включать идентификатор сборки. Это значение по умолчанию, если namespaceType не указано.

Например, если path установлено в значение MyArtifacts , namespaceType установлено в значение BUILD_ID , и name установлено в значение MyArtifact.zip , артефакт результатов сборки хранится в MyArtifacts/<build-ID>/MyArtifact.zip .

имя -> (строка)

Вместе с path и namespaceType, шаблон, который CodeBuild использует для именования и хранения артефакта результатов сборки:

  • Если type установлено в значение CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет именами результатов сборки вместо CodeBuild.
  • Если type установлено в значение NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не генерируются.
  • Если type установлено в значение S3 , это имя объекта артефакта результатов сборки. Если вы установите имя в прямую черту (/), артефакт сохранится в корне выходного хранилища.

Например:

  • Если path установлено в значение MyArtifacts , namespaceType установлено в значение BUILD_ID , и name установлено в значение MyArtifact.zip , артефакт результатов сборки хранится в MyArtifacts/<build-ID>/MyArtifact.zip .
  • Если path пусто, namespaceType установлено в значение NONE , и name установлено в «/», артефакт результатов сборки хранится в корне выходного хранилища.
  • Если path установлено в значение MyArtifacts , namespaceType установлено в значение BUILD_ID , и name установлено в «/», артефакт результатов сборки хранится в MyArtifacts/<build-ID> .

упаковка -> (строка)

Тип артефакта результатов сборки для создания:

  • Если type установлено в значение CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет артефактами результатов сборки вместо CodeBuild.
  • Если type установлено в значение NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не генерируются.
  • Если type установлено в значение S3 , допустимые значения включают:
    • NONE : CodeBuild создает в выходном хранилище папку, содержащую результаты сборки. Это значение по умолчанию, если packaging не указано.
    • ZIP : CodeBuild создаёт в выходном хранилище ZIP-архив, содержащий результаты сборки.

переопределениеИмениАртефакта -> (логическое)

Если этот флаг установлен, имя, указанное в файле buildspec, переопределяет имя артефакта. Имя, указанное в файле buildspec, вычисляется во время сборки и использует Shell Command Language. Например, вы можете добавлять дату и время к имени артефакта, чтобы оно всегда было уникальным.

отключениеШифрования -> (логическое)

Установите в значение true, если вы не хотите шифровать артефакты результатов сборки. Этот параметр действителен только если тип артефактов — Amazon S3. Если этот параметр установлен для другого типа артефактов, генерируется исключение invalidInputException.

идентификаторАртефакта -> (строка)

Идентификатор этого определения артефакта.

доступВладельцаХранилища -> (строка)

Указывает доступ владельца хранилища к объектам, которые другое учётное имя загружает в хранилище Amazon S3 этого владельца. По умолчанию только учётная запись, загружающая объекты в хранилище, имеет доступ к этим объектам. Этот параметр позволяет предоставить доступ владельцу хранилища к этим объектам.

Примечание

Для использования этого параметра ваша служба CodeBuild должна иметь разрешение s3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом (ACL) хранилища.

Этот параметр может принимать следующие значения:

NONE

Владелец хранилища не имеет доступа к объектам. Это значение по умолчанию.

READ_ONLY

Владелец хранилища имеет только доступ для чтения к объектам. Загружающая учётная запись сохраняет права владения объектами.

FULL

Владелец хранилища имеет полный доступ к объектам. Права владения объектами определяются следующим критерием:

  • Если хранилище настроено с параметром предпочтение владельца хранилища, владелец хранилища является владельцем объектов. Загружающая учётная запись будет иметь доступ к объектам в соответствии с политикой хранилища.
  • В противном случае, загружающая учётная запись сохраняет права владения объектами.

Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление правами владения загружаемыми объектами с помощью владения объектами S3 в Руководстве пользователя Amazon Simple Storage Service.

Сокращённый синтаксис:

type=string,location=string,path=string,namespaceType=string,name=string,packaging=string,overrideArtifactName=boolean,encryptionDisabled=boolean,artifactIdentifier=string,bucketOwnerAccess=string ...

Синтаксис JSON:

[
  {
    "type": "CODEPIPELINE"|"S3"|"NO_ARTIFACTS",
    "location": "string",
    "path": "string",
    "namespaceType": "NONE"|"BUILD_ID",
    "name": "string",
    "packaging": "NONE"|"ZIP",
    "overrideArtifactName": true|false,
    "encryptionDisabled": true|false,
    "artifactIdentifier": "string",
    "bucketOwnerAccess": "NONE"|"READ_ONLY"|"FULL"
  }
  ...
]

--cache (структура)

Хранит недавно используемую информацию для быстрого доступа в будущем.

тип -> (строка)

Тип кэша, используемый проектом сборки. Допустимые значения включают:

  • NO_CACHE : Проект сборки не использует кэш.
  • S3 : Проект сборки читает и записывает данные в/из S3.
  • LOCAL : Проект сборки хранит кэш локально на хосте сборки, доступном только для этого хоста.

местоположение -> (строка)

Информация о расположении кэша:

  • NO_CACHE или LOCAL : Это значение игнорируется.
  • S3 : Это имя/префикс хранилища S3.

режимы -> (список)

Массив строк, определяющих режимы локального кэша. Вы можете использовать один или несколько режимов локального кэша одновременно. Это используется только для типов кэша LOCAL.

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

LOCAL_SOURCE_CACHE

Кэширует метаданные Git для первичных и вторичных источников. После создания кэша последующие сборки извлекают только изменения между коммитами. Этот режим подходит для проектов с чистым рабочим каталогом и источником, который представляет собой большой репозиторий Git. Если вы выбрали этот параметр, а ваш проект не использует Git-репозиторий (GitHub, GitHub Enterprise или Bitbucket), этот параметр будет проигнорирован.

LOCAL_DOCKER_LAYER_CACHE

Кэширует существующие слои Docker. Этот режим подходит для проектов, которые компилируют или извлекают большие Docker-образы. Он может предотвратить проблемы с производительностью, связанные с загрузкой больших Docker-образов из сети.

Примечание

  • Вы можете использовать кэш слоёв Docker только в Linux-среде.
  • Флаг privileged должен быть установлен, чтобы ваш проект имел необходимые права Docker.
  • Перед использованием кэша слоёв Docker следует учитывать последствия для безопасности.

LOCAL_CUSTOM_CACHE

Кэширует каталоги, которые вы указываете в файле buildspec. Этот режим подходит, если ваша сценарий сборки не подходит ни к одному из трёх других режимов локального кэша. Если вы используете пользовательский кэш:

  • Можно указывать только каталоги для кэширования. Вы не можете указывать отдельные файлы.
  • Символические ссылки используются для ссылки на кэшированные каталоги.
  • Кэшированные каталоги прикрепляются к вашей сборке до загрузки исходных данных проекта. Кэшированные элементы переопределяются, если элемент источника имеет то же имя. Каталоги указываются с помощью путей кэша в файле buildspec.

(строка)

пространствоИменКэша -> (строка)

Определяет область кэша. Вы можете использовать это пространство имён для совместного использования кэша между несколькими проектами. Дополнительную информацию см. в разделе Совместное использование кэша между проектами в Руководстве пользователя CodeBuild.

Сокращённый синтаксис:

type=string,location=string,modes=string,string,cacheNamespace=string

Синтаксис JSON:

{
  "type": "NO_CACHE"|"S3"|"LOCAL",
  "location": "string",
  "modes": ["LOCAL_DOCKER_LAYER_CACHE"|"LOCAL_SOURCE_CACHE"|"LOCAL_CUSTOM_CACHE", ...],
  "cacheNamespace": "string"
}

--environment (структура)

Информация о среде сборки для проекта сборки.

type -> (строка)

Тип среды сборки для использования в связанных сборках.

Примечание

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

Для получения дополнительной информации см. Типы вычислительных ресурсов среды сборки в руководстве пользователя CodeBuild.

image -> (строка)

Тег изображения или дайджест изображения, идентифицирующий Docker-образ для использования в этом проекте сборки. Используйте следующие форматы:

  • Для тега изображения: <registry>/<repository>:<tag> . Например, в Docker-репозитории, который CodeBuild использует для управления своими Docker-изображениями, это будет aws/codebuild/standard:4.0 .
  • Для дайджеста изображения: <registry>/<repository>@<digest> . Например, для указания изображения с дайджестом «sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf», используйте <registry>/<repository>@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf .

Для получения дополнительной информации см. Docker-изображения, предоставляемые CodeBuild, в руководстве пользователя CodeBuild.

computeType -> (строка)

Информация о вычислительных ресурсах, используемых проектом сборки. Доступные значения включают:

  • ATTRIBUTE_BASED_COMPUTE : Укажите количество vCPU, памяти, дискового пространства и тип машины.

Примечание

Если вы используете ATTRIBUTE_BASED_COMPUTE, вы должны определить свои атрибуты, используя computeConfiguration. CodeBuild выберет самый дешевый экземпляр, удовлетворяющий вашим указанным атрибутам. Для получения дополнительной информации см. Типы сред резервируемых мощностей в руководстве пользователя CodeBuild.
  • BUILD_GENERAL1_SMALL : Используйте до 4 ГБ памяти и 2 vCPU для сборок.
  • BUILD_GENERAL1_MEDIUM : Используйте до 8 ГБ памяти и 4 vCPU для сборок.
  • BUILD_GENERAL1_LARGE : Используйте до 16 ГБ памяти и 8 vCPU для сборок в зависимости от типа вашей среды.
  • BUILD_GENERAL1_XLARGE : Используйте до 72 ГБ памяти и 36 vCPU для сборок в зависимости от типа вашей среды.
  • BUILD_GENERAL1_2XLARGE : Используйте до 144 ГБ памяти, 72 vCPU и 824 ГБ SSD-хранилища для сборок. Этот тип вычислительных ресурсов поддерживает Docker-изображения до 100 ГБ нескомпрессированных данных.
  • BUILD_LAMBDA_1GB : Используйте до 1 ГБ памяти для сборок. Доступен только для типов среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER.
  • BUILD_LAMBDA_2GB : Используйте до 2 ГБ памяти для сборок. Доступен только для типов среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER.
  • BUILD_LAMBDA_4GB : Используйте до 4 ГБ памяти для сборок. Доступен только для типов среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER.
  • BUILD_LAMBDA_8GB : Используйте до 8 ГБ памяти для сборок. Доступен только для типов среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER.
  • BUILD_LAMBDA_10GB : Используйте до 10 ГБ памяти для сборок. Доступен только для типов среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER.

Если вы используете BUILD_GENERAL1_SMALL:

  • Для типа среды LINUX_CONTAINER вы можете использовать до 4 ГБ памяти и 2 vCPU для сборок.
  • Для типа среды LINUX_GPU_CONTAINER вы можете использовать до 16 ГБ памяти, 4 vCPU и 1 NVIDIA A10G Tensor Core GPU для сборок.
  • Для типа среды ARM_CONTAINER вы можете использовать до 4 ГБ памяти и 2 vCPU на процессорах ARM для сборок.

Если вы используете BUILD_GENERAL1_LARGE:

  • Для типа среды LINUX_CONTAINER вы можете использовать до 16 ГБ памяти и 8 vCPU для сборок.
  • Для типа среды LINUX_GPU_CONTAINER вы можете использовать до 255 ГБ памяти, 32 vCPU и 4 NVIDIA Tesla V100 GPU для сборок.
  • Для типа среды ARM_CONTAINER вы можете использовать до 16 ГБ памяти и 8 vCPU на процессорах ARM для сборок.

Для получения дополнительной информации см. Типы сред по требованию в руководстве пользователя CodeBuild.

computeConfiguration -> (структура)

Вычислительная конфигурация проекта сборки. Это необходимо только если computeType установлено на ATTRIBUTE_BASED_COMPUTE.

vCpu -> (целое число)

Количество vCPU типа экземпляра, включенного в ваш флот.

memory -> (целое число)

Объем памяти типа экземпляра, включенного в ваш флот.

disk -> (целое число)

Объем дискового пространства типа экземпляра, включенного в ваш флот.

machineType -> (строка)

Тип машины типа экземпляра, включенного в ваш флот.

instanceType -> (строка)

Тип EC2-экземпляра, который будет запущен в вашем флоте.

fleet -> (структура)

Объект ProjectFleet для использования в этом проекте сборки.

fleetArn -> (строка)

Указывает ARN вычислительного флота для проекта сборки.

environmentVariables -> (список)

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

(структура)

Информация о переменной среды для проекта сборки или сборки.

name -> (строка)

Имя или ключ переменной среды.

value -> (строка)

Значение переменной среды.

Предупреждение

Мы настоятельно не рекомендуем использовать PLAINTEXT переменные среды для хранения конфиденциальных данных, особенно идентификаторов секретных ключей Amazon Web Services. PLAINTEXT переменные среды могут отображаться в виде обычного текста в консоли CodeBuild и в командной строке. Для конфиденциальных данных мы рекомендуем использовать переменную среды типа PARAMETER_STORE или SECRETS_MANAGER.

type -> (строка)

Тип переменной среды. Допустимые значения включают:

  • PARAMETER_STORE : Переменная среды, хранящаяся в хранилище параметров Systems Manager. Для переменных среды этого типа укажите имя параметра в качестве value переменной EnvironmentVariable. Значение параметра будет заменено именем во время выполнения. Вы также можете определить переменные среды хранилища параметров в файле buildspec. Узнайте, как это сделать, в разделе env/parameter-store в руководстве пользователя CodeBuild.
  • PLAINTEXT : Переменная среды в формате обычного текста. Это значение по умолчанию.
  • SECRETS_MANAGER : Переменная среды, хранящаяся в Secrets Manager. Для переменных среды этого типа укажите имя секрета в качестве value переменной EnvironmentVariable. Значение секрета будет заменено именем во время выполнения. Вы также можете определить переменные среды Secrets Manager в файле buildspec. Узнайте, как это сделать, в разделе env/secrets-manager в руководстве пользователя CodeBuild.

privilegedMode -> (булево)

Включает запуск Docker-демонов внутри Docker-контейнера. Установите в значение true только если проект сборки используется для создания Docker-изображений. В противном случае сборка, пытающаяся взаимодействовать с Docker-демоном, завершается ошибкой. Значение по умолчанию - false.

Вы можете инициализировать Docker-демон во время фазы установки вашей сборки, добавив один из следующих наборов команд в фазу установки вашего файла buildspec:

Если базовое изображение операционной системы - Ubuntu Linux:

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&

- timeout 15 sh -c "until docker info; do echo .; sleep 1; done"

Если базовое изображение операционной системы - Alpine Linux, и предыдущая команда не работает, добавьте аргумент -t к timeout:

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&

- timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"

certificate -> (строка)

ARN Amazon S3-бакета, префикс пути и имя объекта, содержащего PEM-закодированный сертификат для проекта сборки. Для получения дополнительной информации см. certificate в руководстве пользователя CodeBuild.

registryCredential -> (структура)

Удостоверения для доступа к приватному реестру.

credential -> (строка)

Amazon Resource Name (ARN) или имя удостоверений, созданных с помощью Secrets Manager.

Примечание

credential может использовать имя удостоверений только если они существуют в текущей области Amazon Web Services.

credentialProvider -> (строка)

Сервис, который создал удостоверения для доступа к частному реестру Docker. Допустимое значение SECRETS_MANAGER - для Secrets Manager.

imagePullCredentialsType -> (строка)

Тип удостоверений, которые CodeBuild использует для извлечения изображений в вашей сборке. Существует два допустимых значения:

  • CODEBUILD указывает, что CodeBuild использует собственные удостоверения. Это требует изменения политики вашего репозитория ECR для доверия к службе CodeBuild.
  • SERVICE_ROLE указывает, что CodeBuild использует роль службы вашего проекта сборки.

При использовании изображений из другого аккаунта или частного реестра, необходимо использовать SERVICE_ROLE удостоверения. При использовании предопределенного CodeBuild изображения, необходимо использовать CODEBUILD удостоверения.

dockerServer -> (структура)

Объект DockerServer для использования в этом проекте сборки.

computeType -> (строка)

Информация о вычислительных ресурсах, используемых docker-сервером. Доступные значения включают:

  • BUILD_GENERAL1_SMALL : Используйте до 4 ГБ памяти и 2 vCPU для вашего docker-сервера.
  • BUILD_GENERAL1_MEDIUM : Используйте до 8 ГБ памяти и 4 vCPU для вашего docker-сервера.
  • BUILD_GENERAL1_LARGE : Используйте до 16 ГБ памяти и 8 vCPU для вашего docker-сервера.
  • BUILD_GENERAL1_XLARGE : Используйте до 64 ГБ памяти и 32 vCPU для вашего docker-сервера.
  • BUILD_GENERAL1_2XLARGE : Используйте до 128 ГБ памяти и 64 vCPU для вашего docker-сервера.

securityGroupIds -> (список)

Список одного или нескольких идентификаторов групп безопасности.

Примечание

Конфигурируемые для docker-серверов группы безопасности должны разрешать входящий сетевой трафик из VPC, сконфигурированной в проекте. Они должны разрешать входящий трафик на порт 9876.

(строка)

status -> (структура)

Объект DockerServerStatus для использования в этом docker-сервере.

status -> (строка)

Статус docker-сервера.

message -> (строка)

Сообщения, связанные со статусом docker-сервера.

Сокращенная синтаксическая запись:

type=string,image=string,computeType=string,computeConfiguration={vCpu=long,memory=long,disk=long,machineType=string,instanceType=string},fleet={fleetArn=string},environmentVariables=[{name=string,value=string,type=string},{name=string,value=string,type=string}],privilegedMode=boolean,certificate=string,registryCredential={credential=string,credentialProvider=string},imagePullCredentialsType=string,dockerServer={computeType=string,securityGroupIds=[string,string],status={status=string,message=string}}

Синтаксис JSON:

{
  "type": "WINDOWS_CONTAINER"|"LINUX_CONTAINER"|"LINUX_GPU_CONTAINER"|"ARM_CONTAINER"|"WINDOWS_SERVER_2019_CONTAINER"|"WINDOWS_SERVER_2022_CONTAINER"|"LINUX_LAMBDA_CONTAINER"|"ARM_LAMBDA_CONTAINER"|"LINUX_EC2"|"ARM_EC2"|"WINDOWS_EC2"|"MAC_ARM",
  "image": "string",
  "computeType": "BUILD_GENERAL1_SMALL"|"BUILD_GENERAL1_MEDIUM"|"BUILD_GENERAL1_LARGE"|"BUILD_GENERAL1_XLARGE"|"BUILD_GENERAL1_2XLARGE"|"BUILD_LAMBDA_1GB"|"BUILD_LAMBDA_2GB"|"BUILD_LAMBDA_4GB"|"BUILD_LAMBDA_8GB"|"BUILD_LAMBDA_10GB"|"ATTRIBUTE_BASED_COMPUTE"|"CUSTOM_INSTANCE_TYPE",
  "computeConfiguration": {
    "vCpu": long,
    "memory": long,
    "disk": long,
    "machineType": "GENERAL"|"NVME",
    "instanceType": "string"
  },
  "fleet": {
    "fleetArn": "string"
  },
  "environmentVariables": [
    {
      "name": "string",
      "value": "string",
      "type": "PLAINTEXT"|"PARAMETER_STORE"|"SECRETS_MANAGER"
    }
    ...
  ],
  "privilegedMode": true|false,
  "certificate": "string",
  "registryCredential": {
    "credential": "string",
    "credentialProvider": "SECRETS_MANAGER"
  },
  "imagePullCredentialsType": "CODEBUILD"|"SERVICE_ROLE",
  "dockerServer": {
    "computeType": "BUILD_GENERAL1_SMALL"|"BUILD_GENERAL1_MEDIUM"|"BUILD_GENERAL1_LARGE"|"BUILD_GENERAL1_XLARGE"|"BUILD_GENERAL1_2XLARGE"|"BUILD_LAMBDA_1GB"|"BUILD_LAMBDA_2GB"|"BUILD_LAMBDA_4GB"|"BUILD_LAMBDA_8GB"|"BUILD_LAMBDA_10GB"|"ATTRIBUTE_BASED_COMPUTE"|"CUSTOM_INSTANCE_TYPE",
    "securityGroupIds": ["string", ...],
    "status": {
      "status": "string",
      "message": "string"
    }
  }
}

--service-role (строка)

ARN роли IAM, которая позволяет CodeBuild взаимодействовать с зависимыми службами Amazon Web Services от имени учетной записи Amazon Web Services.

--timeout-in-minutes (целое число)

Сколько времени, в минутах (от 5 до 2160, что составляет 36 часов), CodeBuild должен ждать, прежде чем отменить любую сборку, которая не была отмечена как завершенная. По умолчанию 60 минут.

--queued-timeout-in-minutes (целое число)

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

--encryption-key (строка)

Ключ управления ключами (CMK) службы управления ключами, который будет использоваться для шифрования артефактов выходных данных сборки.

Примечание

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

Вы можете указать либо Amazon Resource Name (ARN) CMK, либо, если доступен, псевдоним CMK (используя формат alias/<alias-name> ).

--tags (список)

Список пар ключ-значение тегов, связанных с этим проектом сборки.

Эти теги доступны для использования службами Amazon Web Services, поддерживающими теги проектов сборки CodeBuild.

(структура)

Тег, состоящий из ключа и значения.

Этот тег доступен для использования службами Amazon Web Services, поддерживающими теги в CodeBuild.

key -> (строка)

Ключ тега.

value -> (строка)

Значение тега.

Сокращенная синтаксическая запись:

key=string,value=string ...

Синтаксис JSON:

[
  {
    "key": "string",
    "value": "string"
  }
  ...
]

--vpc-config (структура)

VpcConfig позволяет CodeBuild получать доступ к ресурсам в Amazon VPC.

Примечание

Если вы используете вычислительные флоты во время создания проекта, не предоставляйте vpcConfig.

vpcId -> (строка)

Идентификатор Amazon VPC.

subnets -> (список)

Список одного или нескольких идентификаторов подсетей в вашем Amazon VPC.

(строка)

securityGroupIds -> (список)

Список одного или нескольких идентификаторов групп безопасности в вашем Amazon VPC.

(строка)

Сокращенная синтаксическая запись:

vpcId=string,subnets=string,string,securityGroupIds=string,string

Синтаксис JSON:

{
  "vpcId": "string",
  "subnets": ["string", ...],
  "securityGroupIds": ["string", ...]
}

--badge-enabled | --no-badge-enabled (булево)

Установите это значение в true, чтобы сгенерировать публично доступную ссылку для значка сборки вашего проекта.

--logs-config (структура)

Информация о журналах для проекта сборки. Это могут быть журналы в CloudWatch Logs, журналы, загруженные в указанный S3-ведро, или оба варианта.

cloudWatchLogs -> (структура)

Информация о CloudWatch Logs для проекта сборки. CloudWatch Logs включены по умолчанию.

status -> (строка)

Текущий статус журналов в CloudWatch Logs для проекта сборки. Допустимые значения:

  • ENABLED : CloudWatch Logs включены для этого проекта сборки.
  • DISABLED : CloudWatch Logs не включены для этого проекта сборки.

groupName -> (строка)

Имя группы журналов в CloudWatch Logs. Дополнительная информация см. в разделе Работа с группами и потоками журналов.

streamName -> (строка)

Префикс имени потока CloudWatch Logs. Дополнительная информация см. в разделе Работа с группами и потоками журналов.

s3Logs -> (структура)

Информация о журналах, созданных в S3-ведре для проекта сборки. S3-журналы по умолчанию не включены.

status -> (строка)

Текущий статус журналов сборки в S3. Допустимые значения:

  • ENABLED : Журналы сборки в S3 включены для этого проекта сборки.
  • DISABLED : Журналы сборки в S3 не включены для этого проекта сборки.

location -> (строка)

ARN S3-ведра и префикс пути для журналов S3. Если имя вашего Amazon S3-ведра - my-bucket , а префикс пути - build-log , то допустимые форматы - my-bucket/build-log или arn:aws:s3:::my-bucket/build-log .

encryptionDisabled -> (булево)

Установите в true, если вы не хотите шифровать выходные данные журналов сборки в S3. По умолчанию журналы сборки в S3 шифруются.

bucketOwnerAccess -> (строка)

Определяет доступ владельца ведра для объектов, которые другой аккаунт загружает в свое Amazon S3-ведро. По умолчанию доступ к этим объектам имеет только аккаунт, загрузивший объекты в ведро. Это свойство позволяет предоставить доступ к этим объектам владельцу ведра.

Примечание

Для использования этого свойства ваша роль сервиса CodeBuild должна иметь разрешение s3:PutBucketAcl . Это разрешение позволяет CodeBuild изменять список управления доступом (ACL) для ведра.

Это свойство может принимать одно из следующих значений:

NONE

Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.

READ_ONLY

Владелец ведра имеет доступ для чтения к объектам. Загружающий аккаунт сохраняет владение объектами.

FULL

Владелец ведра имеет полный доступ к объектам. Владение объектами определяется следующими критериями:

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

Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление владением загружаемыми объектами с помощью владения объектами S3 в Руководстве пользователя Amazon Simple Storage Service.

Сокращенная синтаксическая запись:

cloudWatchLogs={status=string,groupName=string,streamName=string},s3Logs={status=string,location=string,encryptionDisabled=boolean,bucketOwnerAccess=string}

Синтаксис JSON:

{
  "cloudWatchLogs": {
    "status": "ENABLED"|"DISABLED",
    "groupName": "string",
    "streamName": "string"
  },
  "s3Logs": {
    "status": "ENABLED"|"DISABLED",
    "location": "string",
    "encryptionDisabled": true|false,
    "bucketOwnerAccess": "NONE"|"READ_ONLY"|"FULL"
  }
}

--file-system-locations (список)

Массив объектов ProjectFileSystemLocation для проекта сборки CodeBuild. Объект ProjectFileSystemLocation задает identifier , location , mountOptions , mountPoint и type файловой системы, созданной с помощью Amazon Elastic File System.

(структура)

Информация о файловой системе, созданной Amazon Elastic File System (EFS). Дополнительная информация см. в разделе Что такое Amazon Elastic File System?

type -> (строка)

Тип файловой системы. Поддерживается один тип: EFS .

location -> (строка)

Строка, определяющая расположение файловой системы, созданной Amazon EFS. Ее формат - efs-dns-name:/directory-path . Вы можете найти DNS-имя файловой системы, просмотрев ее в консоли Amazon EFS. Путь к каталогу - это путь к каталогу в файловой системе, который CodeBuild монтирует. Например, если DNS-имя файловой системы - fs-abcd1234.efs.us-west-2.amazonaws.com , а каталог монтирования - my-efs-mount-directory , то location равен fs-abcd1234.efs.us-west-2.amazonaws.com:/my-efs-mount-directory .

Путь к каталогу в формате efs-dns-name:/directory-path необязателен. Если вы не указываете путь к каталогу, расположением будет только DNS-имя, и CodeBuild монтирует всю файловую систему.

mountPoint -> (строка)

Расположение в контейнере, где вы монтируете файловую систему.

identifier -> (строка)

Имя, используемое для доступа к файловой системе, созданной Amazon EFS. CodeBuild создает переменную среды, добавляя identifier в верхнем регистре к CODEBUILD_ . Например, если вы укажете my_efs для identifier , новая переменная среды будет названа CODEBUILD_MY_EFS .

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

mountOptions -> (строка)

Параметры монтирования для файловой системы, созданной Amazon EFS. Параметры монтирования по умолчанию, используемые CodeBuild, - nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 . Дополнительную информацию см. в разделе Рекомендуемые параметры монтирования NFS.

Сокращенная синтаксическая запись:

type=string,location=string,mountPoint=string,identifier=string,mountOptions=string ...

Синтаксис JSON:

[
  {
    "type": "EFS",
    "location": "string",
    "mountPoint": "string",
    "identifier": "string",
    "mountOptions": "string"
  }
  ...
]

--build-batch-config (структура)

Объект ProjectBuildBatchConfig, определяющий параметры пакетной сборки для проекта.

serviceRole -> (строка)

Указывает ARN роли сервиса для проекта пакетной сборки.

combineArtifacts -> (булево)

Указывает, следует ли объединить артефакты сборки для пакетной сборки в одно расположение артефактов.

restrictions -> (структура)

Объект BatchRestrictions , который задает ограничения для пакетной сборки.

maximumBuildsAllowed -> (целое число)

Указывает максимальное количество разрешенных сборок.

computeTypesAllowed -> (список)

Массив строк, определяющих типы вычислительных ресурсов, разрешенные для пакетной сборки. См. Типы вычислительных ресурсов среды сборки в Руководстве пользователя CodeBuild для этих значений.

(строка)

fleetsAllowed -> (список)

Массив строк, определяющих флоты, разрешенные для пакетной сборки. Дополнительную информацию см. в разделе Запуск сборок на резервированных вычислительных флотах в Руководстве пользователя CodeBuild.

(строка)

timeoutInMins -> (целое число)

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

batchReportMode -> (строка)

Указывает, как отчеты о состоянии сборки отправляются поставщику исходного кода для пакетной сборки. Это свойство используется только тогда, когда поставщиком исходного кода вашего проекта является Bitbucket, GitHub или GitHub Enterprise, и ваш проект настроен на отправку отчетов о состоянии сборки поставщику исходного кода.

REPORT_AGGREGATED_BATCH

(По умолчанию) Объединяет все состояния сборки в один отчет о состоянии.

REPORT_INDIVIDUAL_BUILDS

Отправляет отдельный отчет о состоянии для каждой отдельной сборки.

Сокращенная синтаксическая запись:

serviceRole=string,combineArtifacts=boolean,restrictions={maximumBuildsAllowed=integer,computeTypesAllowed=[string,string],fleetsAllowed=[string,string]},timeoutInMins=integer,batchReportMode=string

Синтаксис JSON:

{
  "serviceRole": "string",
  "combineArtifacts": true|false,
  "restrictions": {
    "maximumBuildsAllowed": integer,
    "computeTypesAllowed": ["string", ...],
    "fleetsAllowed": ["string", ...]
  },
  "timeoutInMins": integer,
  "batchReportMode": "REPORT_INDIVIDUAL_BUILDS"|"REPORT_AGGREGATED_BATCH"
}

--concurrent-build-limit (целое число)

Максимальное количество одновременных сборок, разрешенных для этого проекта.

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

--auto-retry-limit (целое число)

Максимальное количество дополнительных автоматических попыток повторного выполнения после завершения сборки с ошибкой. Например, если предел автоматического повтора установлен в 2, CodeBuild вызовет API RetryBuild для автоматического повторного выполнения вашей сборки до 2 дополнительных раз.

--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка соответствует формату, предоставленному --generate-cli-skeleton . Если на командной строке предоставляются другие аргументы, эти значения переопределят значения, предоставленные в JSON. Невозможно передать произвольные двоичные данные с помощью значения, предоставленного в JSON, так как строка будет взята буквально. Это свойство не может быть указано вместе с --cli-input-yaml.

--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено значение без значения или значение input, выводит пример JSON-ввода, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено значение yaml-input, он выведет пример YAML-ввода, который можно использовать с --cli-input-yaml. Если предоставлено значение output, он проверяет ввод команд и возвращает пример JSON-вывода для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.

Глобальные параметры

--debug (логическое значение)

Включить отладочную запись в журнал.

--endpoint-url (строка)

Переопределить URL по умолчанию команды заданным URL.

--no-verify-ssl (логическое значение)

По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет стандартное поведение проверки SSL-сертификатов.

--no-paginate (логическое значение)

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

--output (строка)

Стиль форматирования вывода команд.

  • json
  • текст
  • таблица
  • yaml
  • yaml-поток

--query (строка)

Запрос JMESPath для фильтрации данных ответа.

--profile (строка)

Использовать определённый профиль из файла учетных данных.

--region (строка)

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

--version (строка)

Отобразить версию этого инструмента.

--color (строка)

Включить/отключить цветной вывод.

  • включено
  • выключено
  • автоматически

--no-sign-request (логическое значение)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (строка)

Файл сертификатов CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (целое число)

Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.

--cli-connect-timeout (целое число)

Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.

--cli-binary-format (строка)

Стиль форматирования, используемый для бинарных блобов. Формат по умолчанию — base64. Формат base64 ожидает, что бинарные блобы будут предоставлены в виде закодированной в base64 строки. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и бинарные значения должны быть переданы буквально. При предоставлении содержимого из файла, соответствующего бинарному блобу, fileb:// всегда будет обрабатываться как бинарный и будет использовать содержимое файла напрямую, независимо от параметра cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного параметра cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (логическое значение)

Отключить паджинг CLI для вывода.

--cli-auto-prompt (логическое значение)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (логическое значение)

Отключить автоматическое запросы параметров ввода CLI.

Примеры

Примечание

Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Подробнее см. руководство по началу работы в Руководстве пользователя AWS CLI.

Если не указано иное, все примеры используют правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки терминала. См. Использование кавычек со строками в Руководстве пользователя AWS CLI.

Пример 1: Создание проекта сборки AWS CodeBuild

Следующий create-project пример создает проект сборки CodeBuild, используя файлы исходного кода из ведра S3

aws codebuild create-project \
    --name "my-demo-project" \
    --source "{\"type\": \"S3\",\"location\": \"codebuild-us-west-2-123456789012-input-bucket/my-source.zip\"}" \
    --artifacts {"\"type\": \"S3\",\"location\": \"codebuild-us-west-2-123456789012-output-bucket\""} \
    --environment "{\"type\": \"LINUX_CONTAINER\",\"image\": \"aws/codebuild/standard:1.0\",\"computeType\": \"BUILD_GENERAL1_SMALL\"}" \
    --service-role "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role"

Вывод:

{
    "project": {
        "arn": "arn:aws:codebuild:us-west-2:123456789012:project/my-demo-project",
        "name": "my-cli-demo-project",
        "encryptionKey": "arn:aws:kms:us-west-2:123456789012:alias/aws/s3",
        "serviceRole": "arn:aws:iam::123456789012:role/service-role/my-codebuild-service-role",
        "lastModified": 1556839783.274,
        "badge": {
            "badgeEnabled": false
        },
        "queuedTimeoutInMinutes": 480,
        "environment": {
            "image": "aws/codebuild/standard:1.0",
            "computeType": "BUILD_GENERAL1_SMALL",
            "type": "LINUX_CONTAINER",
            "imagePullCredentialsType": "CODEBUILD",
            "privilegedMode": false,
            "environmentVariables": []
        },
        "artifacts": {
            "location": "codebuild-us-west-2-123456789012-output-bucket",
            "name": "my-cli-demo-project",
            "namespaceType": "NONE",
            "type": "S3",
            "packaging": "NONE",
            "encryptionDisabled": false
        },
        "source": {
            "type": "S3",
            "location": "codebuild-us-west-2-123456789012-input-bucket/my-source.zip",
            "insecureSsl": false
        },
        "timeoutInMinutes": 60,
        "cache": {
            "type": "NO_CACHE"
        },
        "created": 1556839783.274
    }
}

Пример 2: Создание проекта сборки AWS CodeBuild с использованием JSON-файла ввода для параметров

Следующий create-project пример создает проект сборки CodeBuild, передавая все необходимые параметры в файле JSON-ввода. Создайте шаблон входного файла, выполнив команду только с --generate-cli-skeleton parameter.

aws codebuild create-project --cli-input-json file://create-project.json

Файл входного JSON create-project.json содержит следующее содержимое:

{
    "name": "codebuild-demo-project",
    "source": {
        "type": "S3",
        "location": "codebuild-region-ID-account-ID-input-bucket/MessageUtil.zip"
    },
    "artifacts": {
        "type": "S3",
        "location": "codebuild-region-ID-account-ID-output-bucket"
    },
    "environment": {
        "type": "LINUX_CONTAINER",
        "image": "aws/codebuild/standard:1.0",
        "computeType": "BUILD_GENERAL1_SMALL"
    },
    "serviceRole": "serviceIAMRole"
}

Вывод:

{
    "project": {
        "name": "codebuild-demo-project",
        "serviceRole": "serviceIAMRole",
        "tags": [],
        "artifacts": {
            "packaging": "NONE",
            "type": "S3",
            "location": "codebuild-region-ID-account-ID-output-bucket",
            "name": "message-util.zip"
        },
        "lastModified": 1472661575.244,
        "timeoutInMinutes": 60,
        "created": 1472661575.244,
        "environment": {
            "computeType": "BUILD_GENERAL1_SMALL",
            "image": "aws/codebuild/standard:1.0",
            "type": "LINUX_CONTAINER",
            "environmentVariables": []
        },
        "source": {
            "type": "S3",
            "location": "codebuild-region-ID-account-ID-input-bucket/MessageUtil.zip"
        },
        "encryptionKey": "arn:aws:kms:region-ID:account-ID:alias/aws/s3",
        "arn": "arn:aws:codebuild:region-ID:account-ID:project/codebuild-demo-project"
    }
}

Дополнительную информацию см. в разделе «Создание проекта сборки (AWS CLI)» в Руководстве пользователя AWS CodeBuild.

Вывод

project -> (структура)

Информация о созданном проекте сборки.

name -> (строка)

Название проекта сборки.

arn -> (строка)

Amazon Resource Name (ARN) проекта сборки.

description -> (строка)

Описание, облегчающее идентификацию проекта сборки.

source -> (структура)

Информация о входном источнике кода для данного проекта сборки.

type -> (строка)

Тип репозитория, содержащего исходный код, подлежащий сборке. Допустимые значения:

  • BITBUCKET : Исходный код находится в репозитории Bitbucket.
  • CODECOMMIT : Исходный код находится в репозитории CodeCommit.
  • CODEPIPELINE : Параметры исходного кода указаны в действии источника конвейера в CodePipeline.
  • GITHUB : Исходный код находится в репозитории GitHub.
  • GITHUB_ENTERPRISE : Исходный код находится в репозитории GitHub Enterprise Server.
  • GITLAB : Исходный код находится в репозитории GitLab.
  • GITLAB_SELF_MANAGED : Исходный код находится в самообслуживаемом репозитории GitLab.
  • NO_SOURCE : Проект не содержит входного исходного кода.
  • S3 : Исходный код находится в ведре Amazon S3.

location -> (строка)

Информация о местоположении исходного кода, подлежащего сборке. Допустимые значения:

  • Для параметров исходного кода, указанных в действии источника конвейера CodePipeline, location не должен быть указан. Если он указан, CodePipeline его игнорирует. Это происходит потому, что CodePipeline использует параметры в действии источника конвейера вместо этого значения.
  • Для исходного кода в репозитории CodeCommit HTTPS URL клонирования репозитория, содержащего исходный код и файл buildspec (например, https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name>).
  • Для исходного кода в входном ведре Amazon S3, одно из следующих.
    • Путь к файлу ZIP, содержащему исходный код (например, <bucket-name>/<path>/<object-name>.zip).
    • Путь к папке, содержащей исходный код (например, <bucket-name>/<path-to-source-code>/<folder>/).
  • Для исходного кода в репозитории GitHub, HTTPS URL клонирования репозитория, содержащего исходный код и файл buildspec. Необходимо подключить вашу учетную запись Amazon Web Services к вашей учетной записи GitHub. Используйте консоль CodeBuild, чтобы начать создание проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitHub на странице GitHub Авторизовать приложение, в разделе Доступ к организации выберите Запросить доступ рядом с каждым репозиторием, которому вы хотите предоставить доступ CodeBuild, а затем выберите Авторизовать приложение. (После подключения к вашей учетной записи GitHub вам не нужно завершать создание проекта сборки. Вы можете покинуть консоль CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth в OAUTH.
  • Для исходного кода в репозитории GitLab или самообслуживаемом репозитории GitLab, HTTPS URL клонирования репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи GitLab. Используйте консоль CodeBuild, чтобы начать создание проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitLab на странице Авторизовать приложение подключений выберите Авторизовать. Затем на странице Создать подключение GitLab выберите Подключиться к GitLab. (После подключения к вашей учетной записи GitLab вам не нужно завершать создание проекта сборки. Вы можете покинуть консоль CodeBuild.) Чтобы указать CodeBuild переопределить стандартное подключение и использовать это подключение вместо него, установите значение объекта auth в CODECONNECTIONS в объекте source.
  • Для исходного кода в репозитории Bitbucket, HTTPS URL клонирования репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи Bitbucket. Используйте консоль CodeBuild, чтобы начать создание проекта сборки. При использовании консоли для подключения (или повторного подключения) к Bitbucket на странице Bitbucket Подтвердить доступ к вашей учетной записи выберите Предоставить доступ. (После подключения к вашей учетной записи Bitbucket вам не нужно завершать создание проекта сборки. Вы можете покинуть консоль CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth в OAUTH.

Если вы укажете CODEPIPELINE для свойства Type, не указывайте это свойство. Для всех остальных типов вы должны указать Location.

gitCloneDepth -> (целое число)

Информация о глубине клонирования Git для проекта сборки.

gitSubmodulesConfig -> (структура)

Информация о конфигурации Git подмодулей для проекта сборки.

fetchSubmodules -> (булево)

Установите значение true, чтобы получить Git подмодули для вашего проекта сборки CodeBuild.

buildspec -> (строка)

Объявление файла buildspec, используемого для сборок в этом проекте сборки.

Если это значение установлено, оно может быть либо встроенным определением buildspec, либо путем к альтернативному файлу buildspec, относительным к значению встроенной переменной среды CODEBUILD_SRC_DIR, либо путем к ведру S3. Ведро должно находиться в той же области Amazon Web Services, что и проект сборки. Укажите файл buildspec с помощью его ARN (например, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). Если это значение не указано или установлено в пустую строку, исходный код должен содержать файл buildspec в корневой директории. Дополнительную информацию см. в разделе Название и место хранения файла buildspec.

auth -> (структура)

Информация об настройках авторизации для CodeBuild для доступа к исходному коду, подлежащему сборке.

type -> (строка)

Тип авторизации для использования. Допустимые варианты: OAUTH, CODECONNECTIONS или SECRETS_MANAGER.

resource -> (строка)

Значение ресурса, применимое к указанному типу авторизации.

reportBuildStatus -> (булево)

Установите значение true, чтобы сообщать о состоянии начала и завершения сборки вашему поставщику исходного кода. Этот параметр действителен только при использовании поставщика исходного кода GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, GitLab, GitLab Self Managed или Bitbucket. Если это значение установлено, и вы используете другого поставщика исходного кода, возникает invalidInputException.

Для возможности сообщения о статусе сборки поставщику исходного кода пользователь, связанный с поставщиком исходного кода, должен иметь права на запись в репозиторий. Если у пользователя нет прав на запись, статус сборки не может быть обновлён. Дополнительную информацию см. в разделе Доступ поставщика исходного кода в Руководстве пользователя CodeBuild.

Статус сборки, запущенной с помощью веб-хука, всегда сообщается вашему поставщику исходного кода.

Если сборки вашего проекта запускаются с помощью веб-хука, для изменения этого свойства необходимо выполнить push новой коммита в репозиторий.

buildStatusConfig -> (структура)

Содержит информацию, определяющую, как проект сборки сообщает о статусе сборки поставщику исходного кода. Этот параметр используется только при использовании поставщика исходного кода GITHUB, GITHUB_ENTERPRISE или BITBUCKET.

context -> (строка)

Указывает контекст статуса сборки, отправляемого CodeBuild поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра name в статусе коммита Bitbucket. Дополнительную информацию см. в build в документации API Bitbucket.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра context в статусе коммита GitHub. Дополнительную информацию см. в Create a commit status в руководстве разработчика GitHub.

targetUrl -> (строка)

Указывает целевой URL статуса сборки, отправляемого CodeBuild поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра url в статусе коммита Bitbucket. Дополнительную информацию см. в build в документации API Bitbucket.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра target_url в статусе коммита GitHub. Дополнительную информацию см. в Create a commit status в руководстве разработчика GitHub.

insecureSsl -> (булево)

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

sourceIdentifier -> (строка)

Идентификатор источника этого проекта. Идентификатор может содержать только символы латинского алфавита, цифры и символы нижнего подчеркивания, и должен иметь длину менее 128 символов.

secondarySources -> (список)

Массив объектов ProjectSource.

(структура)

Информация о коде исходного файла ввода для проекта сборки.

type -> (строка)

Тип репозитория, содержащего исходный код для сборки. Допустимые значения включают:

  • BITBUCKET : Исходный код находится в репозитории Bitbucket.
  • CODECOMMIT : Исходный код находится в репозитории CodeCommit.
  • CODEPIPELINE : Настройки исходного кода указаны в действии источника конвейера в CodePipeline.
  • GITHUB : Исходный код находится в репозитории GitHub.
  • GITHUB_ENTERPRISE : Исходный код находится в репозитории GitHub Enterprise Server.
  • GITLAB : Исходный код находится в репозитории GitLab.
  • GITLAB_SELF_MANAGED : Исходный код находится в репозитории GitLab с самостоятельным управлением.
  • NO_SOURCE : У проекта нет исходного кода ввода.
  • S3 : Исходный код находится в ведре Amazon S3.

location -> (строка)

Информация о местоположении исходного кода для сборки. Допустимые значения включают:

  • Для настроек исходного кода, указанных в действии источника конвейера в CodePipeline, location не следует указывать. Если оно указано, CodePipeline его игнорирует. Это связано с тем, что CodePipeline использует настройки в действии источника конвейера вместо этого значения.
  • Для исходного кода в репозитории CodeCommit, HTTPS-ссылка на клонирование репозитория, содержащего исходный код и файл buildspec (например, https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name> ).
  • Для исходного кода в ведре ввода Amazon S3, одно из следующего.
    • Путь к файлу ZIP, содержащему исходный код (например, <bucket-name>/<path>/<object-name>.zip ).
    • Путь к папке, содержащей исходный код (например, <bucket-name>/<path-to-source-code>/<folder>/ ).
  • Для исходного кода в репозитории GitHub, HTTPS-ссылка на клонирование репозитория, содержащего исходный и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи GitHub. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitHub, на странице GitHub Authorize application, для Доступа к организации, выберите Запросить доступ рядом с каждым репозиторием, которому вы хотите предоставить CodeBuild доступ, и затем выберите Authorize application. (После подключения к вашей учетной записи GitHub вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth в OAUTH.
  • Для исходного кода в репозитории GitLab или репозитории GitLab с самостоятельным управлением, HTTPS-ссылка на клонирование репозитория, содержащего исходный и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи GitLab. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitLab, на странице Connections Authorize application, выберите Authorize . Затем на странице CodeConnections Create GitLab connection, выберите Connect to GitLab. (После подключения к вашей учетной записи GitLab вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild переопределить стандартное подключение и использовать это подключение вместо него, установите значение объекта auth в CODECONNECTIONS в объекте source.
  • Для исходного кода в репозитории Bitbucket, HTTPS-ссылка на клонирование репозитория, содержащего исходный и файл buildspec. Вам необходимо подключить свою учетную запись Amazon Web Services к вашей учетной записи Bitbucket. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к Bitbucket, на странице Bitbucket Confirm access to your account, выберите Grant access. (После подключения к вашей учетной записи Bitbucket вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте source установите значение объекта auth в OAUTH.

Если вы указываете CODEPIPELINE для свойства Type, не указывайте это свойство. Для всех других типов вы должны указать Location.

gitCloneDepth -> (целое число)

Информация о глубине клонирования Git для проекта сборки.

gitSubmodulesConfig -> (структура)

Информация о конфигурации Git подмодулей для проекта сборки.

fetchSubmodules -> (булево)

Установите в значение true, чтобы получить подмодули Git для вашего проекта сборки CodeBuild.

buildspec -> (строка)

Декларация файла buildspec, которую следует использовать для сборок в этом проекте сборки.

Если это значение установлено, оно может быть либо встроенным определением buildspec, путем к альтернативному файлу buildspec, относительного к значению встроенной переменной среды CODEBUILD_SRC_DIR, либо путем к ведру S3. Ведро должно находиться в той же области Amazon Web Services, что и проект сборки. Укажите файл buildspec с использованием его ARN (например, arn:aws:s3:::my-codebuild-sample2/buildspec.yml ). Если это значение не указано или установлено в пустую строку, исходный код должен содержать файл buildspec в корневой директории. Дополнительную информацию см. в разделе Имя и местоположение файла buildspec.

auth -> (структура)

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

type -> (строка)

Тип авторизации, который следует использовать. Допустимые значения — OAUTH, CODECONNECTIONS или SECRETS_MANAGER.

resource -> (строка)

Значение ресурса, применимое к указанному типу авторизации.

reportBuildStatus -> (булево)

Установите в значение true, чтобы сообщать о статусе начала и завершения сборки вашему поставщику исходного кода. Этот параметр допустим только в том случае, если ваш поставщик исходного кода — GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, GitLab, GitLab Self Managed или Bitbucket. Если это значение установлено, и вы используете другого поставщика исходного кода, будет выброшено исключение invalidInputException.

Чтобы иметь возможность сообщать о статусе сборки поставщику исходного кода, пользователю, связанному с поставщиком исходного кода, необходимо иметь права записи в репозитории. Если у пользователя нет прав записи, статус сборки не может быть обновлен. Дополнительную информацию см. в разделе Доступ поставщика исходного кода в Руководстве пользователя CodeBuild.

Статус сборки, запущенной с помощью веб-хука, всегда сообщается вашему поставщику исходного кода.

Если сборки вашего проекта запускаются с помощью веб-хука, вы должны выполнить новый коммит в репозиторий, чтобы изменения в этом свойстве вступили в силу.

buildStatusConfig -> (структура)

Содержит информацию, определяющую, как проект сборки сообщает о статусе сборки поставщику исходного кода. Этот параметр используется только при поставщике исходного кода GITHUB , GITHUB_ENTERPRISE или BITBUCKET.

context -> (строка)

Определяет контекст статуса сборки, который CodeBuild отправляет поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра name в статусе коммита Bitbucket. Дополнительную информацию см. в документации к API Bitbucket по сборке.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра context в статусе коммита GitHub. Дополнительную информацию см. в руководстве разработчика GitHub по созданию статуса коммита.

targetUrl -> (строка)

Указывает целевой URL статуса сборки, который CodeBuild отправляет поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.

Bitbucket

Этот параметр используется для параметра url в статусе коммита Bitbucket. Дополнительную информацию см. в документации к API Bitbucket по сборке.

GitHub/GitHub Enterprise Server

Этот параметр используется для параметра target_url в статусе коммита GitHub. Дополнительную информацию см. в руководстве разработчика GitHub по созданию статуса коммита.

insecureSsl -> (булево)

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

sourceIdentifier -> (строка)

Идентификатор источника этого проекта. Идентификатор может содержать только буквенно-цифровые символы и символы подчеркивания, и его длина должна быть меньше 128 символов.

sourceVersion -> (строка)

Версия исходного кода ввода для сборки этого проекта. Если не указано, используется последняя версия. Если указано, это должно быть одно из:

  • Для CodeCommit: идентификатор коммита, ветка или Git-тег, которые следует использовать.
  • Для GitHub: идентификатор коммита, идентификатор запроса на вытягивание, имя ветки или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан идентификатор запроса на вытягивание, он должен использовать формат pr/pull-request-ID (например, pr/25 ). Если указано имя ветки, используется идентификатор коммита HEAD ветки. Если не указано, используется идентификатор коммита HEAD по умолчанию.
  • Для GitLab: идентификатор коммита, ветка или Git-тег, которые следует использовать.
  • Для Bitbucket: идентификатор коммита, имя ветки или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветки, используется идентификатор коммита HEAD ветки. Если не указано, используется идентификатор коммита HEAD по умолчанию.
  • Для Amazon S3: идентификатор версии объекта, представляющего файл ZIP исходного кода, который следует использовать.

Если sourceVersion указано на уровне сборки, тогда эта версия имеет приоритет над этим значением sourceVersion (на уровне проекта).

Дополнительную информацию см. в примере версии исходного кода с CodeBuild в Руководстве пользователя CodeBuild.

secondarySourceVersions -> (список)

Массив объектов ProjectSourceVersion. Если secondarySourceVersions указано на уровне сборки, то они переопределяют эти secondarySourceVersions (на уровне проекта).

(структура)

Идентификатор источника и соответствующая версия.

sourceIdentifier -> (строка)

Идентификатор источника в проекте сборки. Идентификатор может содержать только буквенно-цифровые символы и символы подчеркивания, а также должен быть меньше 128 символов.

sourceVersion -> (строка)

Версия источника для соответствующего идентификатора источника. Если указано, должно быть одним из:

  • Для CodeCommit: идентификатор коммита, ветвь или Git-тег для использования.
  • Для GitHub: идентификатор коммита, ID запроса на вытягивание, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан ID запроса на вытягивание, он должен использовать формат pr/pull-request-ID (например, pr/25 ). Если указано имя ветви, используется идентификатор коммита HEAD ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию.
  • Для GitLab: идентификатор коммита, ветвь или Git-тег для использования.
  • Для Bitbucket: идентификатор коммита, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветви, используется идентификатор коммита HEAD ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию.
  • Для Amazon S3: идентификатор версии объекта, который представляет ZIP-файл входных данных сборки для использования.

Дополнительную информацию см. в примере версии источника с CodeBuild в Руководстве пользователя CodeBuild.

artifacts -> (структура)

Информация о выходных артефактах сборки для проекта сборки.

type -> (строка)

Тип выходного артефакта сборки. Допустимые значения включают:

  • CODEPIPELINE : Проект сборки генерирует выходные данные сборки через CodePipeline.

Примечание

Тип CODEPIPELINE не поддерживается для secondaryArtifacts.
  • NO_ARTIFACTS : Проект сборки не генерирует выходных данных сборки.
  • S3 : Проект сборки хранит выходные данные сборки в Amazon S3.

location -> (строка)

Информация о расположении выходного артефакта сборки:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет своими местами хранения выходных данных сборки, а не CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3 , это имя выходного хранилища.

path -> (строка)

Вместе с namespaceType и name, шаблон, который CodeBuild использует для именования и хранения артефакта выходных данных:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет своими именами выходных данных сборки, а не CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3 , это путь к артефакту выходных данных. Если path не указано, path не используется.

Например, если path установлено в MyArtifacts, namespaceType установлено в NONE, и name установлено в MyArtifact.zip, артефакт выходных данных хранится в выходном хранилище по адресу MyArtifacts/MyArtifact.zip.

namespaceType -> (строка)

Вместе с path и name, шаблон, который CodeBuild использует для определения имени и расположения для хранения артефакта выходных данных:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет своими именами выходных данных сборки, а не CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3 , допустимые значения включают:
    • BUILD_ID : Включает идентификатор сборки в расположение артефакта выходных данных сборки.
    • NONE : Не включать идентификатор сборки. Это значение по умолчанию, если namespaceType не указано.

Например, если path установлено в MyArtifacts, namespaceType установлено в BUILD_ID, и name установлено в MyArtifact.zip, артефакт выходных данных хранится в MyArtifacts/<build-ID>/MyArtifact.zip.

name -> (строка)

Вместе с path и namespaceType, шаблон, который CodeBuild использует для именования и хранения артефакта выходных данных:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет своими именами выходных данных сборки, а не CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3 , это имя объекта артефакта выходных данных. Если вы установите имя прямой косой чертой («/»), артефакт сохраняется в корне выходного хранилища.

Например:

  • Если path установлено в MyArtifacts, namespaceType установлено в BUILD_ID, и name установлено в MyArtifact.zip, тогда артефакт выходных данных хранится в MyArtifacts/<build-ID>/MyArtifact.zip.
  • Если path пусто, namespaceType установлено в NONE, и name установлено в «/», артефакт выходных данных сохраняется в корне выходного хранилища.
  • Если path установлено в MyArtifacts, namespaceType установлено в BUILD_ID, и name установлено в «/», артефакт выходных данных хранится в MyArtifacts/<build-ID>.

packaging -> (строка)

Тип артефакта выходных данных сборки для создания:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это связано с тем, что CodePipeline управляет своими артефактами выходных данных сборки, а не CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что выходные данные сборки не генерируются.
  • Если type установлено в S3 , допустимые значения включают:
    • NONE : CodeBuild создает папку в выходном хранилище, которая содержит выходные данные сборки. Это значение по умолчанию, если packaging не указано.
    • ZIP : CodeBuild создает ZIP-архив в выходном хранилище, который содержит выходные данные сборки.

overrideArtifactName -> (логическое значение)

Если этот флаг установлен, имя, указанное в файле buildspec, переопределяет имя артефакта. Имя, указанное в файле buildspec, вычисляется во время сборки и использует Shell Command Language. Например, вы можете добавить дату и время к имени артефакта, чтобы оно всегда было уникальным.

encryptionDisabled -> (логическое значение)

Установите в значение true, если не хотите шифровать свои выходные артефакты. Этот параметр действителен только если тип ваших артефактов — Amazon S3. Если он установлен для другого типа артефактов, будет выброшено исключение invalidInputException.

artifactIdentifier -> (строка)

Идентификатор для этого определения артефакта.

bucketOwnerAccess -> (строка)

Указывает доступ владельца хранилища для объектов, которые другое учетная запись загружает в хранилище Amazon S3. По умолчанию доступ к этим объектам имеет только учетная запись, которая загрузила их в хранилище. Этот параметр позволяет предоставить владельцу хранилища доступ к этим объектам.

Примечание

Для использования этого параметра ваша роль службы CodeBuild должна иметь разрешение s3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для хранилища.

Этот параметр может принимать следующие значения:

NONE

Владелец хранилища не имеет доступа к объектам. Это значение по умолчанию.

READ_ONLY

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

FULL

Владелец хранилища имеет полный доступ к объектам. Права владения объектами определяются следующими критериями:

  • Если хранилище настроено с параметром Bucket owner preferred, владелец хранилища владеет объектами. Загружающая учетная запись будет иметь доступ к объектам в соответствии с политикой хранилища.
  • В противном случае загружающая учетная запись сохраняет права владения объектами.

Дополнительную информацию о правах владения объектами Amazon S3 см. в разделе «Управление правами владения загруженными объектами с помощью S3 Object Ownership» в Руководстве пользователя Amazon Simple Storage Service.

secondaryArtifacts -> (список)

Массив объектов ProjectArtifacts.

(структура)

Информация о результатах сборки для проекта сборки.

тип -> (строка)

Тип результата сборки. Допустимые значения включают:

  • CODEPIPELINE : Проект сборки сгенерировал результаты сборки с помощью CodePipeline.

Примечание

Тип CODEPIPELINE не поддерживается для secondaryArtifacts .
  • NO_ARTIFACTS : Проект сборки не создаёт результаты сборки.
  • S3 : Проект сборки хранит результаты сборки в Amazon S3.

местоположение -> (строка)

Информация о местоположении результата сборки:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет местоположениями результатов сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не создаются.
  • Если type установлено в S3 , это имя выходного ведра.

путь -> (строка)

Вместе с namespaceType и name , шаблон, который CodeBuild использует для именования и хранения результата сборки:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет именами результатов сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не создаются.
  • Если type установлено в S3 , это путь к результату сборки. Если path не указано, path не используется.

Например, если path установлено в MyArtifacts , namespaceType установлено в NONE , и name установлено в MyArtifact.zip , результат сборки хранится в выходном ведре по адресу MyArtifacts/MyArtifact.zip .

пространствоИмен -> (строка)

Вместе с path и name , шаблон, который CodeBuild использует для определения имени и местоположения для хранения результата сборки:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет именами результатов сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если оно указано, потому что результаты сборки не создаются.
  • Если type установлено в S3 , допустимые значения включают:
    • BUILD_ID : Включать ID сборки в местоположение результата сборки.
    • NONE : Не включать ID сборки. Это значение по умолчанию, если namespaceType не указано.

Например, если path установлено в MyArtifacts , namespaceType установлено в BUILD_ID , и name установлено в MyArtifact.zip , результат сборки хранится в MyArtifacts/<build-ID>/MyArtifact.zip .

имя -> (строка)

Вместе с path и namespaceType , шаблон, который CodeBuild использует для именования и хранения результата сборки:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет именами результатов сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если указано, потому что результаты сборки не создаются.
  • Если type установлено в S3 , это имя объекта результата сборки. Если вы установите имя как обратный слэш (“/”), результат сборки хранится в корневом каталоге выходного ведра.

Например:

  • Если path установлено в MyArtifacts , namespaceType установлено в BUILD_ID , и name установлено в MyArtifact.zip , результат сборки хранится в MyArtifacts/<build-ID>/MyArtifact.zip .
  • Если path пустое, namespaceType установлено в NONE , и name установлено в “/ “, результат сборки хранится в корневом каталоге выходного ведра.
  • Если path установлено в MyArtifacts , namespaceType установлено в BUILD_ID , и name установлено в “/ “, результат сборки хранится в MyArtifacts/<build-ID> .

упаковка -> (строка)

Тип результата сборки для создания:

  • Если type установлено в CODEPIPELINE , CodePipeline игнорирует это значение, если оно указано. Это потому, что CodePipeline управляет результатами сборки вместо CodeBuild.
  • Если type установлено в NO_ARTIFACTS , это значение игнорируется, если указано, потому что результаты сборки не создаются.
  • Если type установлено в S3 , допустимые значения включают:
    • NONE : CodeBuild создаёт папку в выходном ведре, которая содержит результат сборки. Это значение по умолчанию, если packaging не указано.
    • ZIP : CodeBuild создаёт ZIP-архив в выходном ведре, который содержит результат сборки.

заменитьИмяРезультата -> (логическое)

Если этот флаг установлен, имя, указанное в файле buildspec, переопределяет имя результата. Имя, указанное в файле buildspec, вычисляется во время сборки и использует язык командной оболочки. Например, вы можете добавить дату и время к имени результата, чтобы оно всегда было уникальным.

отключитьШифрование -> (логическое)

Установите в значение true, если вы не хотите шифровать результаты сборки. Этот параметр действителен только если тип результатов - Amazon S3. Если он установлен с другим типом результата, генерируется исключение invalidInputException.

идентификаторРезультата -> (строка)

Идентификатор для этого определения результата.

доступВладаВедра -> (строка)

Определяет доступ владельца ведра для объектов, которые другое учётное поступление загружает в ведро Amazon S3. По умолчанию доступ к таким объектам имеет только учётная запись, которая загружает объекты в ведро. Этот параметр позволяет предоставить владельцу ведра доступ к этим объектам.

Примечание

Для использования этого параметра, ваша роль службы CodeBuild должна иметь разрешение s3:PutBucketAcl . Это разрешение позволяет CodeBuild изменять список управления доступом для ведра.

Этот параметр может принимать следующие значения:

NONE

Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.

READ_ONLY

Владелец ведра имеет только чтение доступа к объектам. Загружающая учётная запись сохраняет права владения объектами.

FULL

Владелец ведра имеет полный доступ к объектам. Владение объектами определяется следующими критериями:

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

Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление владение загруженными объектами с помощью S3 Object Ownership в Руководстве пользователя Amazon Simple Storage Service.

кеш -> (структура)

Информация о кэше для проекта сборки.

тип -> (строка)

Тип кэша, используемого проектом сборки. Допустимые значения включают:

  • NO_CACHE : Проект сборки не использует кэш.
  • S3 : Проект сборки считывает и записывает из и в S3.
  • LOCAL : Проект сборки хранит кэш локально на хосте сборки, доступном только этому хосту.

местоположение -> (строка)

Информация о местоположении кэша:

  • NO_CACHE или LOCAL : Это значение игнорируется.
  • S3 : Это имя/префикс ведра S3.

режимы -> (список)

Массив строк, которые указывают режимы локального кэша. Вы можете использовать один или несколько режимов локального кэша одновременно. Это используется только для типов кэша LOCAL.

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

LOCAL_SOURCE_CACHE

Кэширует метаданные Git для первичных и вторичных источников. После создания кэша последующие сборки извлекают только изменения между коммитами. Этот режим подходит для проектов с чистым каталогом и источником, который является большим Git репозиторием. Если вы выбрали этот вариант, а ваш проект не использует Git репозиторий (GitHub, GitHub Enterprise или Bitbucket), этот параметр игнорируется.

LOCAL_DOCKER_LAYER_CACHE

Кэширует существующие слои Docker. Этот режим подходит для проектов, которые строят или извлекают большие Docker образы. Он может предотвратить проблемы производительности, вызванные загрузкой больших Docker образов из сети.

Примечание

  • Вы можете использовать кэш слоёв Docker только в среде Linux.
  • Флаг privileged должен быть установлен, чтобы ваш проект имел необходимые разрешения Docker.
  • Вы должны учитывать последствия для безопасности перед использованием кэша слоёв Docker.

LOCAL_CUSTOM_CACHE

Кэширует каталоги, которые вы указываете в файле buildspec. Этот режим подходит, если ваш сценарий сборки не подходит ни одному из других трёх режимов локального кэша. Если вы используете пользовательский кэш:

  • Можно указывать только каталоги для кэширования. Вы не можете указать отдельные файлы.
  • Символьные ссылки используются для ссылки на кэшированные каталоги.
  • Кэшированные каталоги связаны с вашей сборкой перед загрузкой исходных кодов проекта. Кэшированные элементы переопределяются, если элемент источника имеет то же имя. Каталоги указываются с помощью путей кэша в файле buildspec.

(строка)

пространствоИменКеша -> (строка)

Определяет область кэша. Вы можете использовать это пространство имён для совместного использования кэша между несколькими проектами. Дополнительную информацию см. в разделе Обмен кэшем между проектами в Руководстве пользователя CodeBuild.

среда -> (структура)

Информация о среде сборки для данного проекта сборки.

type -> (строка)

Тип среды сборки, используемой для связанных сборок.

Примечание

Если вы используете вычислительные флоты при создании проекта, type будет проигнорировано.

Дополнительную информацию см. в разделе Типы вычислительных ресурсов для среды сборки в руководстве пользователя CodeBuild.

image -> (строка)

Тег изображения или дайджест изображения, определяющий Docker-образ, который следует использовать для этого проекта сборки. Используйте следующие форматы:

  • Для тега изображения: <registry>/<repository>:<tag> . Например, в Docker-репозитории, который CodeBuild использует для управления своими Docker-изображениями, это будет aws/codebuild/standard:4.0 .
  • Для дайджеста изображения: <registry>/<repository>@<digest> . Например, для указания изображения с дайджестом “sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf,” используйте <registry>/<repository>@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf .

Дополнительную информацию см. в разделе Docker-изображения, предоставляемые CodeBuild, в руководстве пользователя CodeBuild.

computeType -> (строка)

Информация о вычислительных ресурсах, используемых проектом сборки. Доступные значения включают:

  • ATTRIBUTE_BASED_COMPUTE : Укажите количество vCPU, объем памяти, объем дискового пространства и тип машины.

Примечание

Если вы используете ATTRIBUTE_BASED_COMPUTE , вы должны определить свои атрибуты, используя computeConfiguration . CodeBuild выберет самый дешевый экземпляр, который удовлетворяет указанным вами атрибутам. Дополнительную информацию см. в разделе Типы сред с резервируемой емкостью в руководстве пользователя CodeBuild.
  • BUILD_GENERAL1_SMALL : Используйте до 4 ГБ памяти и 2 vCPU для сборок.
  • BUILD_GENERAL1_MEDIUM : Используйте до 8 ГБ памяти и 4 vCPU для сборок.
  • BUILD_GENERAL1_LARGE : Используйте до 16 ГБ памяти и 8 vCPU для сборок, в зависимости от типа вашей среды.
  • BUILD_GENERAL1_XLARGE : Используйте до 72 ГБ памяти и 36 vCPU для сборок, в зависимости от типа вашей среды.
  • BUILD_GENERAL1_2XLARGE : Используйте до 144 ГБ памяти, 72 vCPU и 824 ГБ SSD-хранилища для сборок. Этот тип вычислительных ресурсов поддерживает Docker-изображения объемом до 100 ГБ в нескомпрессированном формате.
  • BUILD_LAMBDA_1GB : Используйте до 1 ГБ памяти для сборок. Доступен только для типа среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER .
  • BUILD_LAMBDA_2GB : Используйте до 2 ГБ памяти для сборок. Доступен только для типа среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER .
  • BUILD_LAMBDA_4GB : Используйте до 4 ГБ памяти для сборок. Доступен только для типа среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER .
  • BUILD_LAMBDA_8GB : Используйте до 8 ГБ памяти для сборок. Доступен только для типа среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER .
  • BUILD_LAMBDA_10GB : Используйте до 10 ГБ памяти для сборок. Доступен только для типа среды LINUX_LAMBDA_CONTAINER и ARM_LAMBDA_CONTAINER .

Если вы используете BUILD_GENERAL1_SMALL :

  • Для типа среды LINUX_CONTAINER вы можете использовать до 4 ГБ памяти и 2 vCPU для сборок.
  • Для типа среды LINUX_GPU_CONTAINER вы можете использовать до 16 ГБ памяти, 4 vCPU и 1 NVIDIA A10G Tensor Core GPU для сборок.
  • Для типа среды ARM_CONTAINER вы можете использовать до 4 ГБ памяти и 2 vCPU на процессорах ARM для сборок.

Если вы используете BUILD_GENERAL1_LARGE :

  • Для типа среды LINUX_CONTAINER вы можете использовать до 16 ГБ памяти и 8 vCPU для сборок.
  • Для типа среды LINUX_GPU_CONTAINER вы можете использовать до 255 ГБ памяти, 32 vCPU и 4 NVIDIA Tesla V100 GPU для сборок.
  • Для типа среды ARM_CONTAINER вы можете использовать до 16 ГБ памяти и 8 vCPU на процессорах ARM для сборок.

Дополнительную информацию см. в разделе Типы сред по требованию в руководстве пользователя CodeBuild.

computeConfiguration -> (структура)

Конфигурация вычислительных ресурсов проекта сборки. Требуется только если computeType установлено в ATTRIBUTE_BASED_COMPUTE .

vCpu -> (целое)

Количество vCPU типа экземпляра, включенного в ваш флот.

memory -> (целое)

Объем памяти типа экземпляра, включенного в ваш флот.

disk -> (целое)

Объем дискового пространства типа экземпляра, включенного в ваш флот.

machineType -> (строка)

Тип машины типа экземпляра, включенного в ваш флот.

instanceType -> (строка)

Тип EC2-экземпляра, который будет запущен в вашем флоте.

fleet -> (структура)

Объект ProjectFleet, используемый для этого проекта сборки.

fleetArn -> (строка)

Указывает ARN вычислительного флота для проекта сборки.

environmentVariables -> (список)

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

(структура)

Информация о переменной среды для проекта сборки или сборки.

name -> (строка)

Имя или ключ переменной среды.

value -> (строка)

Значение переменной среды.

Предупреждение

Сильно не рекомендуется использовать PLAINTEXT переменные среды для хранения конфиденциальных значений, особенно идентификаторов секретных ключей Amazon Web Services. PLAINTEXT переменные среды могут быть отображены в виде простого текста с помощью консоли CodeBuild и CLI. Для конфиденциальных значений рекомендуется использовать переменную среды типа PARAMETER_STORE или SECRETS_MANAGER .

type -> (строка)

Тип переменной среды. Допустимые значения включают:

  • PARAMETER_STORE : Переменная среды, хранящаяся в хранилище параметров Systems Manager. Для переменных среды этого типа укажите имя параметра в качестве value переменной EnvironmentVariable. Значение параметра будет подставлено в процессе выполнения. Вы также можете определить переменные среды хранилища параметров в buildspec. Чтобы узнать как, см. env/parameter-store в руководстве пользователя CodeBuild.
  • PLAINTEXT : Переменная среды в формате простого текста. Это значение по умолчанию.
  • SECRETS_MANAGER : Переменная среды, хранящаяся в Secrets Manager. Для переменных среды этого типа укажите имя секрета в качестве value переменной EnvironmentVariable. Значение секрета будет подставлено в процессе выполнения. Вы также можете определить переменные среды Secrets Manager в buildspec. Чтобы узнать как, см. env/secrets-manager в руководстве пользователя CodeBuild.

privilegedMode -> (булево)

Включает запуск Docker-демо-сервера внутри Docker-контейнера. Установите в значение true только если проект сборки используется для построения Docker-изображений. В противном случае сборка, пытающаяся взаимодействовать с Docker-демо-сервером, завершается ошибкой. Значение по умолчанию - false .

Вы можете инициализировать Docker-демо-сервер на этапе установки вашей сборки, добавив один из следующих наборов команд в этап установки вашего файла buildspec:

Если базовый образ операционной системы — Ubuntu Linux:

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&

- timeout 15 sh -c "until docker info; do echo .; sleep 1; done"

Если базовый образ операционной системы — Alpine Linux и предыдущая команда не работает, добавьте аргумент -t к timeout :

- nohup /usr/local/bin/dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --storage-driver=overlay&

- timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"

certificate -> (строка)

ARN ведра Amazon S3, префикса пути и ключа объекта, содержащего PEM-кодированный сертификат для проекта сборки. Дополнительную информацию см. в разделе certificate в руководстве пользователя CodeBuild.

registryCredential -> (структура)

Удостоверения для доступа к частному реестру.

credential -> (строка)

Amazon Resource Name (ARN) или имя удостоверений, созданных с помощью Secrets Manager.

Примечание

credential может использовать имя удостоверений только если они существуют в текущей области Amazon Web Services.

credentialProvider -> (строка)

Сервис, создавший удостоверения для доступа к частному Docker-реестру. Допустимое значение, SECRETS_MANAGER, относится к Secrets Manager.

imagePullCredentialsType -> (строка)

Тип удостоверений, которые CodeBuild использует для извлечения изображений во время вашей сборки. Существует два допустимых значения:

  • CODEBUILD указывает, что CodeBuild использует свои собственные удостоверения. Это требует от вас изменения политики вашего репозитория ECR для доверия к сервисному принципалу CodeBuild.
  • SERVICE_ROLE указывает, что CodeBuild использует сервисный роль вашего проекта сборки.

При использовании изображений из другого аккаунта или частного реестра вы должны использовать удостоверения SERVICE_ROLE. При использовании предопределённого CodeBuild изображения, вы должны использовать удостоверения CODEBUILD.

dockerServer -> (структура)

Объект DockerServer, который нужно использовать для этого проекта сборки.

computeType -> (строка)

Информация о вычислительных ресурсах, которые использует docker-сервер. Доступные значения включают:

  • BUILD_GENERAL1_SMALL : Используйте до 4 ГБ памяти и 2 vCPU для своего docker-сервера.
  • BUILD_GENERAL1_MEDIUM : Используйте до 8 ГБ памяти и 4 vCPU для своего docker-сервера.
  • BUILD_GENERAL1_LARGE : Используйте до 16 ГБ памяти и 8 vCPU для своего docker-сервера.
  • BUILD_GENERAL1_XLARGE : Используйте до 64 ГБ памяти и 32 vCPU для своего docker-сервера.
  • BUILD_GENERAL1_2XLARGE : Используйте до 128 ГБ памяти и 64 vCPU для своего docker-сервера.

securityGroupIds -> (список)

Список одного или нескольких идентификаторов групп безопасности.

Примечание

Группы безопасности, настроенные для Docker-серверов, должны разрешать входящий сетевой трафик из VPC, настроенного в проекте. Они должны разрешать входящий трафик на порт 9876.

(строка)

status -> (структура)

Объект DockerServerStatus, который нужно использовать для этого docker-сервера.

status -> (строка)

Статус docker-сервера.

message -> (строка)

Сообщение, связанное со статусом docker-сервера.

serviceRole -> (строка)

ARN роли IAM, которая позволяет CodeBuild взаимодействовать с зависимыми службами Amazon Web Services от имени учетной записи Amazon Web Services.

timeoutInMinutes -> (целое число)

Сколько времени в минутах, от 5 до 2160 (36 часов), CodeBuild должен ждать, прежде чем отменить любую связанную сборку, которая не была отмечена как завершенная. Значение по умолчанию - 60 минут.

queuedTimeoutInMinutes -> (целое число)

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

encryptionKey -> (строка)

Ключ управления клиентом (CMK) службы управления ключами, используемый для шифрования выходных артефактов сборки.

Примечание

Можно использовать ключ KMS в другой учётной записи для шифрования выходных артефактов сборки, если у вашей роли службы есть разрешения на этот ключ.

Можно указать либо Amazon Resource Name (ARN) CMK, либо, если доступно, псевдоним CMK (в формате alias/<alias-name> ). Если значение не указано, CodeBuild использует управляемый CMK для Amazon Simple Storage Service (Amazon S3).

tags -> (список)

Список пар ключевых слов и значений тегов, связанных с этим проектом сборки.

Эти теги доступны для использования службами Amazon Web Services, поддерживающими теги проектов сборки CodeBuild.

(структура)

Тег, состоящий из ключа и значения.

Этот тег доступен для использования службами Amazon Web Services, поддерживающими теги в CodeBuild.

key -> (строка)

Ключ тега.

value -> (строка)

Значение тега.

created -> (отметка времени)

Дата создания проекта сборки в формате Unix.

lastModified -> (отметка времени)

Дата последнего изменения настроек проекта сборки в формате Unix.

webhook -> (структура)

Информация о webhook, который связывает события репозитория с проектом сборки в CodeBuild.

url -> (строка)

URL webhook.

payloadUrl -> (строка)

Конечная точка CodeBuild, в которую отправляются события webhook.

secret -> (строка)

Секретный токен связанного репозитория.

Примечание

Webhook Bitbucket не поддерживает secret .

branchFilter -> (строка)

Регулярное выражение, используемое для определения веток репозитория, которые будут собраны при срабатывании webhook. Если имя ветки соответствует регулярному выражению, она собирается. Если branchFilter пусто, собираются все ветки.

Примечание

Рекомендуется использовать filterGroups вместо branchFilter .

filterGroups -> (список)

Массив массивов объектов WebhookFilter, используемых для определения, какие webhook запускают сборку. По крайней мере, один WebhookFilter в массиве должен указать EVENT в качестве своего type .

Для запуска сборки должен быть пройден хотя бы один фильтр группы в массиве filterGroups . Для прохождения группы фильтров каждый из её фильтров должен быть пройден.

(список)

(структура)

Фильтр, используемый для определения, какие webhook запускают сборку.

type -> (строка)

Тип фильтра webhook. Существует 11 типов фильтров webhook: EVENT , ACTOR_ACCOUNT_ID , HEAD_REF , BASE_REF , FILE_PATH , COMMIT_MESSAGE , TAG_NAME , RELEASE_NAME , REPOSITORY_NAME , ORGANIZATION_NAME и WORKFLOW_NAME .

  • EVENT

    • Событие webhook запускает сборку, когда предоставленное pattern соответствует одному из девяти типов событий: PUSH , PULL_REQUEST_CREATED , PULL_REQUEST_UPDATED , PULL_REQUEST_CLOSED , PULL_REQUEST_REOPENED , PULL_REQUEST_MERGED , RELEASED , PRERELEASED и WORKFLOW_JOB_QUEUED . Шаблоны EVENT задаются через запятую. Например, PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED фильтрует все события push, создания и обновления pull request.

    Примечание

    Типы PULL_REQUEST_REOPENED и WORKFLOW_JOB_QUEUED работают только с GitHub и GitHub Enterprise. Типы RELEASED и PRERELEASED работают только с GitHub.

  • ACTOR_ACCOUNT_ID

    • Событие webhook запускает сборку, когда идентификатор учётной записи GitHub, GitHub Enterprise или Bitbucket соответствует регулярному выражению pattern .
  • HEAD_REF

    • Событие webhook запускает сборку, когда head reference соответствует регулярному выражению pattern . Например, refs/heads/branch-name и refs/tags/tag-name .

    Примечание

    Работает с событиями push, pull request GitHub и GitHub Enterprise, push и pull request Bitbucket.

  • BASE_REF

    • Событие webhook запускает сборку, когда base reference соответствует регулярному выражению pattern . Например, refs/heads/branch-name .

    Примечание

    Работает только с событиями pull request.

  • FILE_PATH

    • Webhook запускает сборку, когда путь изменённого файла соответствует регулярному выражению pattern .

    Примечание

    Работает только с событиями push и pull request.

  • COMMIT_MESSAGE

    • Webhook запускает сборку, когда сообщение коммита head соответствует регулярному выражению pattern .

    Примечание

    Работает только с событиями push и pull request.

  • TAG_NAME

    • Webhook запускает сборку, когда имя тега релиза соответствует регулярному выражению pattern .

    Примечание

    Работает только с событиями RELEASED и PRERELEASED .

  • RELEASE_NAME

    • Webhook запускает сборку, когда имя релиза соответствует регулярному выражению pattern .

    Примечание

    Работает только с событиями RELEASED и PRERELEASED .

  • REPOSITORY_NAME

    • Webhook запускает сборку, когда имя репозитория соответствует регулярному выражению pattern .

    Примечание

    Работает только с глобальными или организационными webhook GitHub.

  • ORGANIZATION_NAME

    • Webhook запускает сборку, когда имя организации соответствует регулярному выражению pattern .

    Примечание

    Работает только с глобальными webhook GitHub.

  • WORKFLOW_NAME

    • Webhook запускает сборку, когда имя рабочей области соответствует регулярному выражению pattern .

    Примечание

    Работает только с событиями WORKFLOW_JOB_QUEUED .

    Примечание

    Для сборки с исполнителем Buildkite, размещённым в CodeBuild, фильтры WORKFLOW_NAME будут фильтровать по имени канала.

pattern -> (строка)

Для WebHookFilter , использующего тип EVENT , строка, разделенная запятыми, которая определяет одно или несколько событий. Например, фильтр webhook PUSH, PULL_REQUEST_CREATED, PULL_REQUEST_UPDATED позволяет всем событиям push, создания и обновления pull request запускать сборку.

Для WebHookFilter , использующего любой другой тип фильтра, регулярное выражение. Например, WebHookFilter , использующий HEAD_REF для type и шаблон ^refs/heads/ запускает сборку, когда head reference — это ветка с именем refs/heads/branch-name .

excludeMatchedPattern -> (логическое значение)

Указывает, что pattern определяет события webhook, которые не запускают сборку. Если true, тогда событие webhook, которое не соответствует pattern , запускает сборку. Если false, тогда событие webhook, которое соответствует pattern , запускает сборку.

buildType -> (строка)

Определяет тип сборки, которую запустит этот webhook.

Примечание

RUNNER_BUILDKITE_BUILD доступен только для проектов типа источника NO_SOURCE , настроенных для сборки с исполнителем Buildkite. Дополнительную информацию о сборках с исполнителем Buildkite, размещённым в CodeBuild, см. в руководстве пользователя CodeBuild в разделе «Руководство пользователя CodeBuild».

manualCreation -> (логическое значение)

Если manualCreation равно true, CodeBuild не создаёт webhook в GitHub и вместо этого возвращает значения payloadUrl и secret для webhook. Значения payloadUrl и secret в выводе можно использовать для ручного создания webhook в GitHub.

Примечание

manualCreation доступен только для webhook GitHub.

lastModifiedSecret -> (отметка времени)

Отметка времени последнего изменения секретного токена репозитория.

scopeConfiguration -> (структура)

Настройка области для глобальных или организационных webhook.

Примечание

Глобальные или организационные webhook доступны только для webhook GitHub и Github Enterprise.

name -> (строка)

Имя группы, предприятия или организации, которая будет отправлять события webhook в CodeBuild, в зависимости от типа webhook.

domain -> (строка)

Домен организации GitHub Enterprise или группы GitLab Self Managed. Обратите внимание, что этот параметр необходим только в том случае, если тип источника вашего проекта — GITHUB_ENTERPRISE или GITLAB_SELF_MANAGED.

scope -> (строка)

Тип области для webhook GitHub или GitLab. По умолчанию область — GITHUB_ORGANIZATION.

status -> (строка)

Статус webhook. Допустимые значения:

  • CREATING : webhook создается.
  • CREATE_FAILED : создание webhook завершилось неудачно.
  • ACTIVE : webhook успешно создан и активен.
  • DELETING : webhook удаляется.

statusMessage -> (строка)

Сообщение, связанное со статусом webhook.

vpcConfig -> (структура)

Информация о конфигурации VPC, к которой CodeBuild получает доступ.

vpcId -> (строка)

ID Amazon VPC.

subnets -> (список)

Список одного или нескольких ID подсетей в вашем Amazon VPC.

(строка)

securityGroupIds -> (список)

Список одного или нескольких ID групп безопасности в вашем Amazon VPC.

(строка)

badge -> (структура)

Информация о значке сборки для проекта сборки.

badgeEnabled -> (boolean)

Установите это значение в true, чтобы сгенерировать публично доступную ссылку на значок сборки вашего проекта.

badgeRequestUrl -> (string)

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

logsConfig -> (structure)

Информация о логах для проекта сборки. Проект может создавать логи в CloudWatch Logs, в ведре S3 или в обоих.

cloudWatchLogs -> (structure)

Информация о CloudWatch Logs для проекта сборки. CloudWatch Logs включены по умолчанию.

status -> (string)

Текущий статус логов в CloudWatch Logs для проекта сборки. Допустимые значения:

  • ENABLED : CloudWatch Logs включены для этого проекта сборки.
  • DISABLED : CloudWatch Logs не включены для этого проекта сборки.

groupName -> (string)

Имя группы логов в CloudWatch Logs. Дополнительную информацию см. в разделе Работа с группами и потоками логов.

streamName -> (string)

Префикс имени потока CloudWatch Logs. Дополнительную информацию см. в разделе Работа с группами и потоками логов.

s3Logs -> (structure)

Информация о логах, созданных в ведре S3 для проекта сборки. Логи в S3 включены не по умолчанию.

status -> (string)

Текущий статус логов сборки в S3. Допустимые значения:

  • ENABLED : Логи сборки S3 включены для этого проекта сборки.
  • DISABLED : Логи сборки S3 не включены для этого проекта сборки.

location -> (string)

ARN ведра S3 и префикс пути к логам S3. Если имя вашего ведра Amazon S3 — my-bucket , а префикс пути — build-log , то допустимые форматы — my-bucket/build-log или arn:aws:s3:::my-bucket/build-log.

encryptionDisabled -> (boolean)

Установите в true, если вы не хотите шифровать выходные данные логов сборки S3. По умолчанию логи сборки S3 шифруются.

bucketOwnerAccess -> (string)

Указывает доступ владельца ведра к объектам, загружаемым другим аккаунтом в ведро Amazon S3. По умолчанию доступ к этим объектам имеет только аккаунт, загрузивший их в ведро. Это свойство позволяет предоставить доступ к этим объектам владельцу ведра.

Примечание

Чтобы использовать это свойство, ваша роль службы CodeBuild должна иметь разрешение s3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для ведра.

Это свойство может иметь одно из следующих значений:

NONE

Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.

READ_ONLY

Владелец ведра имеет доступ для чтения к объектам. Загружающий аккаунт сохраняет владение объектами.

FULL

Владелец ведра имеет полный доступ к объектам. Владение объектами определяется по следующим критериям:

  • Если ведро настроено со значением "Владелец ведра предпочтительнее", владелец ведра владеет объектами. Загружающий аккаунт будет иметь доступ к объектам в соответствии с политикой ведра.
  • В противном случае загружающий аккаунт сохраняет владение объектами.

Дополнительную информацию об управлении владение объектами Amazon S3 см. в разделе Управление владение загружаемыми объектами с помощью свойств владения объектами S3 в руководстве пользователя Amazon Simple Storage Service.

fileSystemLocations -> (list)

Массив объектов ProjectFileSystemLocation для проекта сборки CodeBuild. Объект ProjectFileSystemLocation указывает identifier , location , mountOptions , mountPoint и type файловой системы, созданной с помощью Amazon Elastic File System.

(structure)

Информация о файловой системе, созданной с помощью Amazon Elastic File System (EFS). Дополнительную информацию см. в разделе Что такое Amazon Elastic File System?

type -> (string)

Тип файловой системы. Поддерживается только тип EFS.

location -> (string)

Строка, указывающая расположение файловой системы, созданной с помощью Amazon EFS. Ее формат — efs-dns-name:/directory-path. DNS-имя файловой системы можно найти, просмотрев ее в консоли Amazon EFS. Путь к каталогу — это путь к каталогу в файловой системе, который CodeBuild монтирует. Например, если DNS-имя файловой системы — fs-abcd1234.efs.us-west-2.amazonaws.com , а каталог для монтирования — my-efs-mount-directory , то значение location равно fs-abcd1234.efs.us-west-2.amazonaws.com:/my-efs-mount-directory.

Путь к каталогу в формате efs-dns-name:/directory-path необязателен. Если вы не укажете путь к каталогу, значение location будет содержать только DNS-имя, и CodeBuild смонтирует всю файловую систему.

mountPoint -> (string)

Расположение в контейнере, где монтируется файловая система.

identifier -> (string)

Имя, используемое для доступа к файловой системе, созданной с помощью Amazon EFS. CodeBuild создает переменную окружения, добавляя identifier в верхнем регистре к CODEBUILD_. Например, если вы укажете my_efs для identifier , будет создана новая переменная окружения с именем CODEBUILD_MY_EFS.

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

mountOptions -> (string)

Параметры монтирования файловой системы, созданной с помощью Amazon EFS. По умолчанию CodeBuild использует параметры монтирования nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2. Дополнительную информацию см. в разделе Рекомендованные параметры монтирования NFS.

buildBatchConfig -> (structure)

Объект ProjectBuildBatchConfig, определяющий параметры пакетной сборки для проекта.

serviceRole -> (string)

Указывает ARN роли службы для проекта пакетной сборки.

combineArtifacts -> (boolean)

Указывает, следует ли объединять артефакты сборки для пакетной сборки в одно место расположения артефактов.

restrictions -> (structure)

Объект BatchRestrictions, указывающий ограничения для пакетной сборки.

maximumBuildsAllowed -> (integer)

Указывает максимальное количество разрешенных сборок.

computeTypesAllowed -> (list)

Массив строк, указывающих типы вычислительных ресурсов, разрешенные для пакетной сборки. Смотрите типы вычислительных ресурсов среды сборки в Руководстве пользователя CodeBuild.

(string)

fleetsAllowed -> (list)

Массив строк, указывающих флоты, разрешенные для пакетной сборки. См. раздел Выполнение сборок на резервированных флотах с возможностью предварительной оплаты в Руководстве пользователя CodeBuild.

(string)

timeoutInMins -> (integer)

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

batchReportMode -> (string)

Указывает, как отчеты о статусе сборки отправляются поставщику источника для пакетной сборки. Это свойство используется только в случае, если поставщик источника вашего проекта — Bitbucket, GitHub или GitHub Enterprise, и ваш проект настроен на отправку отчетов о статусе сборки поставщику источника.

REPORT_AGGREGATED_BATCH

(По умолчанию) Объединить все статусы сборок в один отчет о статусе.

REPORT_INDIVIDUAL_BUILDS

Отправить отдельный отчет о статусе для каждой отдельной сборки.

concurrentBuildLimit -> (integer)

Максимальное количество одновременных сборок, разрешенных для этого проекта.

Новые сборки запускаются только в том случае, если текущее число сборок меньше или равно этому пределу. Если текущее число сборок достигает этого предела, новые сборки будут задерживаться и не будут выполняться.

projectVisibility -> (string)

Указывает видимость сборок проекта. Возможные значения:

PUBLIC_READ

Сборки проекта видны всем.

PRIVATE

Сборки проекта не видны всем.

publicProjectAlias -> (string)

Содержит идентификатор проекта, используемый с публичными API сборки.

resourceAccessRole -> (string)

ARN роли IAM, которая позволяет CodeBuild получать доступ к CloudWatch Logs и артефактам Amazon S3 для сборок проекта.

autoRetryLimit -> (integer)

Максимальное количество дополнительных автоматических повторов после неудачной сборки. Например, если лимит автоматического повтора установлен в 2, CodeBuild будет вызывать API RetryBuild для автоматического повтора вашей сборки до 2 дополнительных раз.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

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