start-build-batch
Описание
Запускает пакетную сборку проекта.
См. также: Документацию AWS API
Синтаксис
start-build-batch
--project-name <value>
[--secondary-sources-override <value>]
[--secondary-sources-version-override <value>]
[--source-version <value>]
[--artifacts-override <value>]
[--secondary-artifacts-override <value>]
[--environment-variables-override <value>]
[--source-type-override <value>]
[--source-location-override <value>]
[--source-auth-override <value>]
[--git-clone-depth-override <value>]
[--git-submodules-config-override <value>]
[--buildspec-override <value>]
[--insecure-ssl-override | --no-insecure-ssl-override]
[--report-build-batch-status-override | --no-report-build-batch-status-override]
[--environment-type-override <value>]
[--image-override <value>]
[--compute-type-override <value>]
[--certificate-override <value>]
[--cache-override <value>]
[--service-role-override <value>]
[--privileged-mode-override | --no-privileged-mode-override]
[--build-timeout-in-minutes-override <value>]
[--queued-timeout-in-minutes-override <value>]
[--encryption-key-override <value>]
[--idempotency-token <value>]
[--logs-config-override <value>]
[--registry-credential-override <value>]
[--image-pull-credentials-type-override <value>]
[--build-batch-config-override <value>]
[--debug-session-enabled | --no-debug-session-enabled]
[--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]
Параметры
--project-name (строка)
--secondary-sources-override (список)
Массив объектов 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>/).
- Путь к ZIP-архиву, содержащему исходный код (например,
- Для исходного кода в репозитории 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 -> (целое число)
gitSubmodulesConfig -> (структура)
Информация о настройке Git подмодулей для проекта сборки.
fetchSubmodules -> (булево)
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 -> (строка)
resource -> (строка)
reportBuildStatus -> (булево)
Установите в значение true, чтобы сообщить поставщику исходного кода о статусе начала и завершения сборки. Этот параметр действителен только в том случае, если ваш поставщик исходного кода GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, GitLab или Bitbucket. Если это значение установлено, и вы используете другого поставщика исходного кода, будет выброшено исключение invalidInputException.
Чтобы сообщить статусу сборки поставщику исходного кода, пользователь, связанный с поставщиком исходного кода, должен иметь права на запись в репозиторий. Если у пользователя нет прав на запись, статус сборки не может быть обновлён. Дополнительную информацию см. в разделе Доступ поставщика исходного кода в Руководстве пользователя CodeBuild.
Статус сборки, запущенной с помощью webhook, всегда сообщается поставщику исходного кода.
Если сборки проекта запускаются с помощью webhook, вы должны выполнить push нового коммита в репозиторий, чтобы изменение этого свойства вступило в силу.
buildStatusConfig -> (структура)
Содержит информацию, определяющую, как проект сборки сообщает статус сборки поставщику исходного кода. Этот параметр используется только при использовании поставщика исходного кода GITHUB , GITHUB_ENTERPRISE или BITBUCKET .
context -> (строка)
Указывает контекст статуса сборки, отправляемого CodeBuild поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.
Этот параметр используется для параметра name в статусе коммита Bitbucket. Дополнительную информацию см. в разделе build в документации API Bitbucket.
Этот параметр используется для параметра context в статусе коммита GitHub. Дополнительную информацию см. в разделе Создание статуса коммита в руководстве разработчика GitHub.
targetUrl -> (строка)
Указывает целевой URL статуса сборки, отправляемый CodeBuild поставщику исходного кода. Использование этого параметра зависит от поставщика исходного кода.
Этот параметр используется для параметра url в статусе коммита Bitbucket. Дополнительную информацию см. в разделе build в документации API Bitbucket.
Этот параметр используется для параметра target_url в статусе коммита GitHub. Дополнительную информацию см. в разделе Создание статуса коммита в руководстве разработчика GitHub.
insecureSsl -> (булево)
sourceIdentifier -> (строка)
Сокращенный синтаксис:
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-version-override (список)
Массив объектов ProjectSourceVersion, которые переопределяют версии вторичных источников в проекте пакетной сборки.
(структура)
Идентификатор источника и его соответствующая версия.
sourceIdentifier -> (строка)
sourceVersion -> (строка)
Версия источника для соответствующего идентификатора источника. Если указано, должно быть одно из следующих значений:
- Для CodeCommit: идентификатор коммита, ветвь или тег Git для использования.
- Для GitHub: идентификатор коммита, идентификатор pull запроса, имя ветви или имя тега, соответствующее версии исходного кода, которую вы хотите собрать. Если указан идентификатор pull запроса, он должен использовать формат
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"
}
...
]
--source-version (строка)
Версия пакета сборки, подлежащая сборке в рамках этого построения. Если не указано, используется последняя версия. Если указано, содержимое зависит от поставщика источника:
Используемый идентификатор коммита, ветвь или тег Git.
Идентификатор коммита, идентификатор запроса на вытягивание, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан идентификатор запроса на вытягивание, он должен использовать формат pr/pull-request-ID (например, pr/25 ). Если указано имя ветви, используется идентификатор коммита HEAD ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию для ветви.
Идентификатор коммита, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветви, используется идентификатор коммита HEAD ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию для ветви.
Идентификатор версии объекта, который представляет файл ZIP с входными данными для сборки.
Если sourceVersion указано на уровне проекта, то это sourceVersion (на уровне сборки) имеет приоритет.
Дополнительную информацию см. в разделе Пример версии источника с CodeBuild в руководстве пользователя CodeBuild.
--artifacts-override (структура)
Массив объектов ProjectArtifacts, содержащих информацию о переопределениях артефактов выходных данных сборки для проекта сборки.
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 -> (булево)
encryptionDisabled -> (булево)
artifactIdentifier -> (строка)
bucketOwnerAccess -> (строка)
Указывает доступ владельца хранилища для объектов, загружаемых другой учетной записью в их хранилище Amazon S3. По умолчанию доступ к этим объектам имеет только учетная запись, которая загрузила их в хранилище. Этот параметр позволяет предоставить доступ владельцу хранилища к этим объектам.
Примечание
Для использования этого параметра ваша роль службы CodeBuild должна иметь разрешениеs3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для хранилища.Этот параметр может принимать следующие значения:
Владелец хранилища не имеет доступа к объектам. Это значение по умолчанию.
Владелец хранилища имеет только доступ для чтения к объектам. Загружающая учетная запись сохраняет права собственности на объекты.
Владелец хранилища имеет полный доступ к объектам. Права собственности на объекты определяются следующими критериями:
- Если хранилище настроено с параметром Предпочтительный владелец хранилища, владелец хранилища является владельцем объектов. У загружающей учетной записи будет доступ к объектам, как указано в политике хранилища.
- В противном случае загружающая учетная запись сохраняет права собственности на объекты.
Дополнительную информацию об обладания объектами 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"
}
--secondary-artifacts-override (список)
Массив объектов 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.
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.
имя -> (строка)
Вместе с 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-архив, содержащий выходные данные сборки.
-
overrideArtifactName -> (boolean)
encryptionDisabled -> (boolean)
artifactIdentifier -> (строка)
bucketOwnerAccess -> (строка)
Указывает доступ владельца хранилища для объектов, которые другое учетное задание загружает в хранилище Amazon S3.
По умолчанию доступ к этим объектам имеет только учетная запись, которая загружает их в хранилище. Этот параметр позволяет предоставить владельцу хранилища доступ к этим объектам.
Примечание
Для использования этого параметра ваша роль службы CodeBuild должна иметь разрешениеs3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для хранилища.Этот параметр может принимать следующие значения:
Владелец хранилища не имеет доступа к объектам. Это значение по умолчанию.
Владелец хранилища имеет доступ только для чтения к объектам. Загружающая учетная запись сохраняет владение объектами.
Владелец хранилища имеет полный доступ к объектам. Владение объектами определяется следующими критериями:
- Если хранилище настроено с параметром 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"
}
...
]
--environment-variables-override (список)
Массив объектов EnvironmentVariable, которые переопределяют или дополняют переменные среды, определенные в проекте пакетной сборки.
(структура)
Информация о переменной среды для проекта сборки или сборки.
имя -> (строка)
значение -> (строка)
Значение переменной среды.
Предупреждение
Мы настоятельно не рекомендуем использовать переменные средыPLAINTEXT для хранения конфиденциальных значений, особенно идентификаторов секретных ключей Amazon Web Services. Переменные среды PLAINTEXT могут отображаться в виде обычного текста в консоли CodeBuild и с помощью командной строки. Для конфиденциальных значений мы рекомендуем использовать переменную среды типа PARAMETER_STORE или SECRETS_MANAGER.тип -> (строка)
Тип переменной среды. Допустимые значения включают:
-
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.
Сокращенная синтаксическая запись:
name=string,value=string,type=string ...
Синтаксис JSON:
[
{
"name": "string",
"value": "string",
"type": "PLAINTEXT"|"PARAMETER_STORE"|"SECRETS_MANAGER"
}
...
]
--source-type-override (строка)
Тип входных данных исходного кода, который переопределяет входные данные исходного кода, определенные в проекте пакетной сборки.
Возможные значения:
CODECOMMITCODEPIPELINEGITHUBGITLABGITLAB_SELF_MANAGEDS3BITBUCKETGITHUB_ENTERPRISENO_SOURCE
--source-location-override (строка)
--source-auth-override (структура)
Объект SourceAuth, переопределяющий объект, определенный в проекте пакетной сборки. Это переопределение применяется только если исходный код проекта — BitBucket или GitHub.
тип -> (строка)
ресурс -> (строка)
Сокращенная синтаксическая запись:
type=string,resource=string
Синтаксис JSON:
{
"type": "OAUTH"|"CODECONNECTIONS"|"SECRETS_MANAGER",
"resource": "string"
}
--git-clone-depth-override (целое число)
--git-submodules-config-override (структура)
Объект GitSubmodulesConfig, который переопределяет конфигурацию Git-подмодулей для этой пакетной сборки.
fetchSubmodules -> (булево)
Сокращенная синтаксическая запись:
fetchSubmodules=boolean
Синтаксис JSON:
{
"fetchSubmodules": true|false
}
--buildspec-override (строка)
Объявление файла buildspec, которое переопределяет, только для этой сборки, последний файл buildspec, уже определенный в проекте сборки.
Если это значение установлено, оно может быть определением buildspec в строке, путем к альтернативному файлу buildspec относительно значения встроенной переменной окружения CODEBUILD_SRC_DIR, или путем к ведру S3. Ведро должно находиться в той же области Amazon Web Services, что и проект сборки. Укажите файл buildspec, используя его ARN (например, arn:aws:s3:::my-codebuild-sample2/buildspec.yml ). Если это значение не указано или установлено в пустую строку, исходный код должен содержать файл buildspec в корневом каталоге. Дополнительную информацию см. в разделе Имя и расположение файла buildspec.
--insecure-ssl-override | --no-insecure-ssl-override (булево)
--report-build-batch-status-override | --no-report-build-batch-status-override (булево)
Установите в значение true, чтобы сообщить вашему поставщику исходного кода о состоянии начала и завершения пакетной сборки. Если вы используете этот параметр с поставщиком исходного кода, отличным от GitHub, GitHub Enterprise или Bitbucket, будет выброшено исключение invalidInputException.
Примечание
Состояние сборки, вызванной веб-хуком, всегда сообщается вашему поставщику исходного кода.--environment-type-override (строка)
Тип контейнера для этой пакетной сборки, переопределяющий тип, указанный в проекте пакетной сборки.
Возможные значения:
WINDOWS_CONTAINERLINUX_CONTAINERLINUX_GPU_CONTAINERARM_CONTAINERWINDOWS_SERVER_2019_CONTAINERWINDOWS_SERVER_2022_CONTAINERLINUX_LAMBDA_CONTAINERARM_LAMBDA_CONTAINERLINUX_EC2ARM_EC2WINDOWS_EC2MAC_ARM
--image-override (строка)
--compute-type-override (строка)
Имя типа вычислительных ресурсов для этой пакетной сборки, переопределяющее имя, указанное в проекте пакетной сборки.
Возможные значения:
BUILD_GENERAL1_SMALLBUILD_GENERAL1_MEDIUMBUILD_GENERAL1_LARGEBUILD_GENERAL1_XLARGEBUILD_GENERAL1_2XLARGEBUILD_LAMBDA_1GBBUILD_LAMBDA_2GBBUILD_LAMBDA_4GBBUILD_LAMBDA_8GBBUILD_LAMBDA_10GBATTRIBUTE_BASED_COMPUTECUSTOM_INSTANCE_TYPE
--certificate-override (строка)
--cache-override (структура)
Объект ProjectCache, указывающий переопределения кэша.
тип -> (строка)
Тип кэша, используемого проектом сборки. Допустимые значения:
-
NO_CACHE: проект сборки не использует кэш. -
S3: проект сборки считывает и записывает данные в/из S3. -
LOCAL: проект сборки хранит кэш локально на хосте сборки, доступном только этому хосту.
местоположение -> (строка)
Информация о местоположении кэша:
-
NO_CACHEилиLOCAL: это значение игнорируется. -
S3: это имя ведра S3/префикс.
режимы -> (список)
Массив строк, задающих режимы локального кэша. Вы можете использовать один или несколько режимов локального кэша одновременно. Это используется только для типов кэша LOCAL.
Возможные значения:
Кэширует метаданные Git для основных и вторичных источников. После создания кэша последующие сборки извлекают только изменения между коммитами. Этот режим подходит для проектов с чистым рабочим каталогом и источником, который представляет собой большой Git-репозиторий. Если вы выбрали этот вариант, а ваш проект не использует Git-репозиторий (GitHub, GitHub Enterprise или Bitbucket), опция игнорируется.
Кэширует существующие слои Docker. Этот режим подходит для проектов, которые строят или извлекают большие Docker-образы. Он может предотвратить проблемы с производительностью, связанные с загрузкой больших Docker-образов из сети.
Примечание
- Вы можете использовать кэш слоев Docker только в среде Linux.
- Флаг
privilegedдолжен быть установлен, чтобы ваш проект имел необходимые права Docker. - Прежде чем использовать кэш слоев Docker, следует учитывать последствия для безопасности.
LOCAL_CUSTOM_CACHE
Кэширует каталоги, которые вы указываете в файле buildspec. Этот режим подходит, если сценарий сборки не подходит ни для одного из других трёх режимов кэша. Если вы используете пользовательский кэш:
- Можно указывать только каталоги для кэширования. Нельзя указывать отдельные файлы.
- Используются ссылки на каталоги кэша.
- Кэшированные каталоги прикрепляются к вашей сборке до загрузки исходного кода проекта. Кэшированные элементы переопределяются, если элемент источника имеет то же имя. Каталоги указываются с помощью путей кэша в файле buildspec.
(строка)
cacheNamespace -> (строка)
Сокращенная синтаксическая запись:
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"
}
--service-role-override (строка)
--privileged-mode-override | --no-privileged-mode-override (булево)
--build-timeout-in-minutes-override (целое число)
--queued-timeout-in-minutes-override (целое число)
--encryption-key-override (строка)
Ключ главного мастера управления ключами (CMK) службы управления ключами, переопределяющий ключ, указанный в проекте пакетной сборки. Ключ CMK шифрует артефакты вывода сборки.
Примечание
Вы можете использовать ключ CMK другой учётной записи, если ваша роль службы имеет разрешения на этот ключ.Вы можете указать либо Amazon Resource Name (ARN) CMK, либо, если доступно, псевдоним CMK (в формате alias/<alias-name>).
--idempotency-token (строка)
StartBuildBatch. Токен включен в запрос StartBuildBatch и действителен в течение пяти минут. Если вы повторите запрос StartBuildBatch с тем же токеном, но измените параметр, CodeBuild вернёт ошибку несовпадения параметров.--logs-config-override (структура)
Объект LogsConfig, который переопределяет параметры ведения журнала, определенные в проекте пакетной сборки.
cloudWatchLogs -> (структура)
Информация о CloudWatch Logs для проекта сборки. CloudWatch Logs включены по умолчанию.
status -> (строка)
Текущий статус журналов в CloudWatch Logs для проекта сборки. Допустимые значения:
-
ENABLED: CloudWatch Logs включены для этого проекта сборки. -
DISABLED: CloudWatch Logs не включены для этого проекта сборки.
groupName -> (строка)
streamName -> (строка)
s3Logs -> (структура)
Информация о журналах, созданных в ведре S3 для проекта сборки. Журналы S3 по умолчанию не включены.
status -> (строка)
Текущий статус журналов сборки в S3. Допустимые значения:
-
ENABLED: Журналы сборки S3 включены для этого проекта сборки. -
DISABLED: Журналы сборки S3 не включены для этого проекта сборки.
location -> (строка)
my-bucket, а префикс пути — build-log, допустимые форматы — my-bucket/build-log или arn:aws:s3:::my-bucket/build-log.encryptionDisabled -> (булево)
bucketOwnerAccess -> (строка)
Определяет доступ владельца ведра к объектам, загруженным другим аккаунтом в ведро Amazon S3. По умолчанию доступ к этим объектам имеет только аккаунт, который загрузил их в ведро. Это свойство позволяет предоставить доступ к этим объектам владельцу ведра.
Примечание
Для использования этого свойства ваша роль службы CodeBuild должна иметь разрешениеs3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для ведра.Это свойство может принимать одно из следующих значений:
Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.
Владелец ведра имеет доступ для чтения к объектам. Загружающий аккаунт сохраняет права собственности на объекты.
Владелец ведра имеет полный доступ к объектам. Владение объектами определяется следующими критериями:
- Если ведро настроено с параметром предпочтение владельца ведра, владелец ведра владеет объектами. Загружающий аккаунт будет иметь доступ к объектам в соответствии с политикой ведра.
- В противном случае загружающий аккаунт сохраняет права собственности на объекты.
Дополнительную информацию о владении объектами 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"
}
}
--registry-credential-override (структура)
Объект RegistryCredential, который переопределяет учетные данные для доступа к частному реестру.
credential -> (строка)
Amazon Resource Name (ARN) или имя учетных данных, созданных с помощью Secrets Manager.
Примечание
credential может использовать только имя учетных данных, если они существуют в текущем регионе Amazon Web Services.credentialProvider -> (строка)
Краткий синтаксис:
credential=string,credentialProvider=string
Синтаксис JSON:
{
"credential": "string",
"credentialProvider": "SECRETS_MANAGER"
}
--image-pull-credentials-type-override (строка)
Тип учетных данных, которые CodeBuild использует для извлечения изображений в вашей пакетной сборке. Существует два допустимых значения:
Указывает, что CodeBuild использует собственные учетные данные. Это требует изменения политики вашего репозитория ECR для доверия к сервисному принципалу CodeBuild.
Указывает, что CodeBuild использует роль службы вашего проекта сборки.
При использовании изображений из другого аккаунта или частного реестра, необходимо использовать учетные данные SERVICE_ROLE. При использовании предварительно подготовленных изображений CodeBuild, необходимо использовать учетные данные CODEBUILD.
Возможные значения:
CODEBUILDSERVICE_ROLE
--build-batch-config-override (структура)
Объект BuildBatchConfigOverride, содержащий переопределения конфигурации пакетной сборки.
serviceRole -> (строка)
combineArtifacts -> (булево)
restrictions -> (структура)
Объект BatchRestrictions, определяющий ограничения для пакетной сборки.
maximumBuildsAllowed -> (целое число)
computeTypesAllowed -> (список)
Массив строк, определяющий типы вычислительных ресурсов, разрешенные для пакетной сборки. См. Типы вычислительных ресурсов среды сборки в Руководстве пользователя CodeBuild для получения этих значений.
(строка)
fleetsAllowed -> (список)
Массив строк, определяющий флоты, разрешенные для пакетной сборки. См. Запуск сборок на резервируемых флот вычислительных ресурсов в Руководстве пользователя CodeBuild для получения дополнительной информации.
(строка)
timeoutInMins -> (целое число)
batchReportMode -> (строка)
Указывает, как отчеты о статусе сборки отправляются поставщику источника для пакетной сборки. Это свойство используется только при поставщике источника проекта — Bitbucket, GitHub или GitHub Enterprise, и если ваш проект настроен на отправку отчетов о статусе сборки поставщику источника.
(По умолчанию) Объединить все статусы сборок в один отчет.
Отправить отдельный отчет о статусе для каждой отдельной сборки.
Краткий синтаксис:
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"
}
--debug-session-enabled | --no-debug-session-enabled (булево)
--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
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Показать версию этого инструмента.
--color (строка)
Включить/отключить вывод в цвете.
- on
- off
- auto
--no-sign-request (булево)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент указан.
--ca-bundle (строка)
Файл сертификатов CA для проверки сертификатов SSL. Переопределяет настройки конфигурации/среды.
file:// (целое число)
Максимальное время чтения сокета в секундах. Если значение равно 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-auto-prompt (булево)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (булево)
Отключить автоматическое запроса параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров, необходимо установить и настроить AWS CLI. Дополнительную информацию можно найти в руководстве по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, подобные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Дополнительную информацию можно найти в разделе Использование кавычек со строками в Руководстве пользователя AWS CLI.
Запуск пакетной сборки в AWS CodeBuild.
Следующий start-build-batch пример запускает пакетную сборку указанного проекта.
aws codebuild start-build-batch \
--project-name <project-name>
Вывод:
{
"buildBatch": {
"id": "<project-name>:<batch-ID>",
"arn": "arn:aws:codebuild:<region-ID>:<account-ID>:build-batch/<project-name>:<batch-ID>",
"startTime": "2020-10-21T16:54:24.740000+00:00",
"currentPhase": "SUBMITTED",
"buildBatchStatus": "IN_PROGRESS",
"projectName": "<project-name>",
"source": {
"type": "GITHUB",
"location": "<GitHub-repo-URL>",
"gitCloneDepth": 1,
"gitSubmodulesConfig": {
"fetchSubmodules": false
},
"reportBuildStatus": false,
"insecureSsl": false
},
"secondarySources": [],
"secondarySourceVersions": [],
"artifacts": {
"location": ""
},
"secondaryArtifacts": [],
"cache": {
"type": "NO_CACHE"
},
"environment": {
"type": "LINUX_CONTAINER",
"image": "aws/codebuild/amazonlinux2-x86_64-standard:3.0",
"computeType": "BUILD_GENERAL1_SMALL",
"environmentVariables": [],
"privilegedMode": false,
"imagePullCredentialsType": "CODEBUILD"
},
"logConfig": {
"cloudWatchLogs": {
"status": "ENABLED"
},
"s3Logs": {
"status": "DISABLED",
"encryptionDisabled": false
}
},
"buildTimeoutInMinutes": 60,
"queuedTimeoutInMinutes": 480,
"complete": false,
"initiator": "<username>",
"encryptionKey": "arn:aws:kms:<region-ID>:<account-ID>:alias/aws/s3",
"buildBatchNumber": 3,
"buildBatchConfig": {
"serviceRole": "arn:aws:iam::<account-ID>:role/service-role/<service-role-name>",
"restrictions": {
"maximumBuildsAllowed": 100
},
"timeoutInMins": 480
}
}
}
Для получения дополнительной информации, см. Пакетные сборки в AWS CodeBuild в Руководстве пользователя AWS CodeBuild.
Вывод
buildBatch -> (структура)
Объект, содержащий информацию о пакетной сборке.
id -> (строка)
arn -> (строка)
startTime -> (временная метка)
endTime -> (временная метка)
currentPhase -> (строка)
buildBatchStatus -> (строка)
sourceVersion -> (строка)
resolvedSourceVersion -> (строка)
Идентификатор разрешенной версии исходного кода этой пакетной сборки.
- Для CodeCommit, GitHub, GitHub Enterprise и BitBucket — идентификатор коммита.
- Для CodePipeline — ревизия источника, предоставленная CodePipeline.
- Для Amazon S3 — это не применяется.
projectName -> (строка)
phases -> (список)
Массив объектов, описывающих фазы пакетной сборки.
(структура)
Содержит информацию о стадии пакетной сборки.
phaseType -> (строка)
Название фазы пакетной сборки. Допустимые значения включают:
Сборка артефактов выходных данных и их загрузка в место расположения вывода.
Загрузка спецификации пакетной сборки.
Одна или несколько сборок завершились неудачно.
Пакетная сборка выполняется.
Пакетная сборка была остановлена.
Пакетная сборка была отправлена.
Пакетная сборка выполнена успешно.
phaseStatus -> (строка)
Текущий статус фазы пакетной сборки. Допустимые значения включают:
Фаза сборки завершилась неудачно.
Фаза сборки потерпела сбой.
Фаза сборки все еще выполняется.
Фаза сборки остановлена.
Фаза сборки выполнена успешно.
Фаза сборки истекла.
startTime -> (временная метка)
endTime -> (временная метка)
durationInSeconds -> (длинное целое)
contexts -> (список)
Дополнительная информация о фазе пакетной сборки. Особенно для отладки неудачной пакетной сборки.
(структура)
Дополнительная информация о фазе сборки, которая завершилась ошибкой. Эту информацию можно использовать для отладки.
statusCode -> (строка)
message -> (строка)
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>/).
- Путь к файлу ZIP, содержащему исходный код (например,
- Для исходного кода в репозитории GitHub, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вы должны подключить свою учетную запись Amazon Web Services к своей учетной записи GitHub. Используйте консоль CodeBuild для начала создания проекта сборки. Когда вы используете консоль для подключения (или повторного подключения) к GitHub, на странице GitHub Авторизовать приложение , для Доступа к организации выберите Запросить доступ рядом с каждым репозиторием, для которого вы хотите предоставить CodeBuild доступ, а затем выберите Авторизовать приложение . (После подключения к вашей учетной записи GitHub вам не нужно завершать создание проекта сборки. Вы можете покинуть консоль CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте
sourceустановите значение объектаauthс именемtypeв значениеOAUTH. - Для исходного кода в репозитории GitLab или GitLab (самоуправляемый), HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вы должны подключить свою учетную запись Amazon Web Services к своей учетной записи GitLab. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitLab, на странице подключений Авторизовать приложение, выберите Авторизовать. Затем на странице CodeConnections Создать подключение GitLab, выберите Подключиться к GitLab. (После подключения к вашей учетной записи GitLab вам не нужно завершать создание проекта сборки. Вы можете покинуть консоль CodeBuild.) Чтобы указать CodeBuild переопределить стандартное подключение и использовать это подключение вместо него, установите значение объекта
authс именемtypeв значениеCODECONNECTIONSв объектеsource. - Для исходного кода в репозитории Bitbucket, HTTPS-ссылка для клонирования репозитория, содержащего исходный код и файл buildspec. Вы должны подключить свою учетную запись Amazon Web Services к вашей учетной записи Bitbucket. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к Bitbucket, на странице Bitbucket Подтвердить доступ к вашей учетной записи, выберите Предоставить доступ. (После подключения к вашей учетной записи Bitbucket вам не нужно завершать создание проекта сборки. Вы можете покинуть консоль CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте
sourceустановите значение объектаauthс именемtypeв значениеOAUTH.
Если вы указываете CODEPIPELINE для свойства Type, не указывайте это свойство. Для всех остальных типов вы должны указать Location .
gitCloneDepth -> (целое число)
gitSubmodulesConfig -> (структура)
Информация о конфигурации Git подмодулей для проекта сборки.
fetchSubmodules -> (булево)
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 -> (строка)
resource -> (строка)
reportBuildStatus -> (булево)
Установите значение true, чтобы сообщить о статусе начала и завершения сборки вашему поставщику источника. Этот параметр действителен только в том случае, если вашим поставщиком источника является GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, GitLab или Bitbucket. Если это установлено, а вы используете другого поставщика источника, будет выброшено invalidInputException.
Чтобы иметь возможность сообщать о статусе сборки поставщику источника, пользователь, связанный с поставщиком источника, должен иметь права записи в репозиторий. Если у пользователя нет прав записи, статус сборки не может быть обновлён. Дополнительную информацию см. в разделе Доступ к поставщику источника в Руководстве пользователя CodeBuild.
Статус сборки, запущенной с помощью веб-хука, всегда сообщается вашему поставщику источника.
Если сборки вашего проекта запускаются с помощью веб-хука, вы должны отправить новую коммита в репозиторий, чтобы изменения в этом свойстве вступили в силу.
buildStatusConfig -> (структура)
Содержит информацию, определяющую, как проект сборки сообщает о статусе сборки поставщику источника. Этот параметр используется только, когда поставщик источника - GITHUB , GITHUB_ENTERPRISE или BITBUCKET .
context -> (строка)
Указывает контекст статуса сборки, который CodeBuild отправляет поставщику источника. Использование этого параметра зависит от поставщика источника.
Этот параметр используется для параметра name в статусе коммита Bitbucket. Дополнительную информацию см. в build в документации API Bitbucket.
Этот параметр используется для параметра context в статусе коммита GitHub. Дополнительную информацию см. в разделе Создание статуса коммита в руководстве разработчика GitHub.
targetUrl -> (строка)
Указывает целевой URL статуса сборки, который CodeBuild отправляет поставщику источника. Использование этого параметра зависит от поставщика источника.
Этот параметр используется для параметра url в статусе коммита Bitbucket. Дополнительную информацию см. в build в документации API Bitbucket.
Этот параметр используется для параметра target_url в статусе коммита GitHub. Дополнительную информацию см. в разделе Создание статуса коммита в руководстве разработчика GitHub.
insecureSsl -> (булево)
sourceIdentifier -> (строка)
secondarySources -> (список)
Массив объектов 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>/).
- Путь к ZIP-архиву, содержащему исходный код (например,
- Для исходного кода в репозитории GitHub, HTTPS-ссылка на клонирование репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить вашу учетную запись Amazon Web Services к вашей учетной записи GitHub. Используйте консоль CodeBuild для начала создания проекта сборки. Когда вы используете консоль для подключения (или повторного подключения) к GitHub, на странице GitHub Авторизовать приложение, для Доступа к организации выберите Запросить доступ рядом с каждым репозиторием, к которому вы хотите предоставить CodeBuild доступ, и затем выберите Авторизовать приложение. (После подключения к вашей учетной записи GitHub вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте
sourceустановите значение объектаauthдля свойстваtypeв значениеOAUTH. - Для исходного кода в репозитории GitLab или самообслуживаемом GitLab репозитории, HTTPS-ссылка на клонирование репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить вашу учетную запись Amazon Web Services к вашей учетной записи GitLab. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к GitLab, на странице Авторизовать приложение подключений выберите Авторизовать. Затем на странице Создать подключение GitLab в CodeConnections выберите Подключиться к GitLab. (После подключения к вашей учетной записи GitLab вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild переопределить стандартное подключение и использовать это подключение вместо него, установите значение объекта
authдля свойстваtypeв значениеCODECONNECTIONSв объектеsource. - Для исходного кода в репозитории Bitbucket, HTTPS-ссылка на клонирование репозитория, содержащего исходный код и файл buildspec. Вам необходимо подключить вашу учетную запись Amazon Web Services к вашей учетной записи Bitbucket. Используйте консоль CodeBuild для начала создания проекта сборки. При использовании консоли для подключения (или повторного подключения) к Bitbucket, на странице Bitbucket Подтвердить доступ к вашей учетной записи выберите Предоставить доступ. (После подключения к вашей учетной записи Bitbucket вам не нужно завершать создание проекта сборки. Вы можете выйти из консоли CodeBuild.) Чтобы указать CodeBuild использовать это подключение, в объекте
sourceустановите значение объектаauthдля свойстваtypeв значениеOAUTH.
Если вы укажете CODEPIPELINE для свойства Type, не указывайте это свойство. Для всех других типов вы должны указать Location.
gitCloneDepth -> (целое число)
gitSubmodulesConfig -> (структура)
Информация о конфигурации подмодулей Git для проекта сборки.
fetchSubmodules -> (булево)
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 для доступа к исходному коду, который необходимо собрать.
тип -> (строка)
ресурс -> (строка)
reportBuildStatus -> (булево)
Установите в значение true, чтобы отправить статус начала и завершения сборки вашему поставщику источника. Этот параметр допустим только при использовании GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, GitLab, GitLab Self Managed или Bitbucket в качестве поставщика источника. Если это значение установлено, и вы используете другого поставщика источника, будет выброшено исключение invalidInputException.
Чтобы иметь возможность отправлять статус сборки поставщику источника, пользователь, связанный с поставщиком источника, должен иметь права записи в репозиторий. Если у пользователя нет прав записи, статус сборки не может быть обновлён. Дополнительную информацию см. в разделе Доступ к поставщику источника в руководстве пользователя CodeBuild.
Статус сборки, вызванной веб-хуком, всегда отправляется поставщику источника.
Если сборки вашего проекта вызываются веб-хуком, вам необходимо внести новые изменения в репозиторий, чтобы это свойство вступило в силу.
buildStatusConfig -> (структура)
Содержит информацию, определяющую, как проект сборки отправляет статус сборки поставщику источника. Этот параметр используется только при использовании GITHUB , GITHUB_ENTERPRISE или BITBUCKET в качестве поставщика источника.
контекст -> (строка)
Указывает контекст статуса сборки, который CodeBuild отправляет поставщику источника. Использование этого параметра зависит от поставщика источника.
Этот параметр используется для параметра name в статусе коммита Bitbucket. Дополнительную информацию см. в документации по API Bitbucket.
Этот параметр используется для параметра context в статусе коммита GitHub. Дополнительную информацию см. в руководстве разработчика GitHub по созданию статуса коммита.
targetUrl -> (строка)
Указывает целевой URL статуса сборки, который CodeBuild отправляет поставщику источника. Использование этого параметра зависит от поставщика источника.
Этот параметр используется для параметра url в статусе коммита Bitbucket. Дополнительную информацию см. в документации по API Bitbucket.
Этот параметр используется для параметра target_url в статусе коммита GitHub. Дополнительную информацию см. в руководстве разработчика GitHub по созданию статуса коммита.
insecureSsl -> (булево)
sourceIdentifier -> (строка)
secondarySourceVersions -> (список)
Массив объектов ProjectSourceVersion. Каждый объект ProjectSourceVersion должен быть одним из:
- Для CodeCommit: идентификатор коммита, ветвь или тег Git для использования.
- Для GitHub: идентификатор коммита, идентификатор pull-запроса, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан идентификатор pull-запроса, он должен использовать формат
pr/pull-request-ID(например,pr/25). Если указано имя ветви, используется идентификатор коммита HEAD этой ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию. - Для Bitbucket: идентификатор коммита, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветви, используется идентификатор коммита HEAD этой ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию.
- Для Amazon S3: идентификатор версии объекта, представляющего ZIP-архив с входными данными для сборки.
(структура)
Идентификатор источника и соответствующая версия.
sourceIdentifier -> (строка)
sourceVersion -> (строка)
Версия источника для соответствующего идентификатора источника. Если указано, она должна быть одной из:
- Для CodeCommit: идентификатор коммита, ветвь или тег Git для использования.
- Для GitHub: идентификатор коммита, идентификатор pull-запроса, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указан идентификатор pull-запроса, он должен использовать формат
pr/pull-request-ID(например,pr/25). Если указано имя ветви, используется идентификатор коммита HEAD этой ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию. - Для GitLab: идентификатор коммита, ветвь или тег Git для использования.
- Для Bitbucket: идентификатор коммита, имя ветви или имя тега, соответствующие версии исходного кода, которую вы хотите собрать. Если указано имя ветви, используется идентификатор коммита HEAD этой ветви. Если не указано, используется идентификатор коммита HEAD по умолчанию.
- Для Amazon S3: идентификатор версии объекта, представляющего ZIP-архив с входными данными для сборки.
Для получения более подробной информации см. Пример версии источника с CodeBuild в Руководстве пользователя CodeBuild.
artifacts -> (структура)
Объект BuildArtifacts, определяющий артефакты сборки для этой пакетной сборки.
location -> (строка)
sha256sum -> (строка)
Хэш SHA-256 артефакта сборки.
Вы можете использовать этот хэш вместе с инструментом для проверки контрольных сумм, чтобы подтвердить целостность и подлинность файла.
Примечание
Это значение доступно только в том случае, если значениеpackaging проекта сборки установлено в ZIP.md5sum -> (строка)
Хэш MD5 артефакта сборки.
Вы можете использовать этот хэш вместе с инструментом для проверки контрольных сумм, чтобы подтвердить целостность и подлинность файла.
Примечание
Это значение доступно только в том случае, если значениеpackaging проекта сборки установлено в ZIP.overrideArtifactName -> (логическое значение)
encryptionDisabled -> (логическое значение)
artifactIdentifier -> (строка)
bucketOwnerAccess -> (строка)
Указывает доступ владельца ведра для объектов, загруженных другим аккаунтом в их ведро Amazon S3. По умолчанию доступ к этим объектам имеет только аккаунт, который загрузил их в ведро. Это свойство позволяет предоставить доступ к этим объектам владельцу ведра.
Примечание
Для использования этого свойства ваша служба CodeBuild должна иметь разрешениеs3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для ведра.Это свойство может иметь одно из следующих значений:
Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.
Владелец ведра имеет только доступ для чтения к объектам. Загружающий аккаунт сохраняет владение объектами.
Владелец ведра имеет полный доступ к объектам. Владение объектами определяется следующими критериями:
- Если ведро настроено с настройкой Bucket owner preferred, владелец ведра владеет объектами. Загружающий аккаунт будет иметь доступ к объектам в соответствии с политикой ведра.
- В противном случае загружающий аккаунт сохраняет владение объектами.
Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление владение загруженными объектами с помощью S3 Object Ownership в Руководстве пользователя Amazon Simple Storage Service.
secondaryArtifacts -> (список)
Массив объектов BuildArtifacts, определяющих артефакты сборки для этой пакетной сборки.
(структура)
Информация об артефактах выходных данных сборки.
location -> (строка)
sha256sum -> (строка)
Хэш SHA-256 артефакта сборки.
Вы можете использовать этот хэш вместе с инструментом для проверки контрольных сумм, чтобы подтвердить целостность и подлинность файла.
Примечание
Это значение доступно только в том случае, если значениеpackaging проекта сборки установлено в ZIP.md5sum -> (строка)
Хэш MD5 артефакта сборки.
Вы можете использовать этот хэш вместе с инструментом для проверки контрольных сумм, чтобы подтвердить целостность и подлинность файла.
Примечание
Это значение доступно только в том случае, если значениеpackaging проекта сборки установлено в ZIP.overrideArtifactName -> (логическое значение)
encryptionDisabled -> (логическое значение)
artifactIdentifier -> (строка)
bucketOwnerAccess -> (строка)
Указывает доступ владельца ведра для объектов, загруженных другим аккаунтом в их ведро Amazon S3. По умолчанию доступ к этим объектам имеет только аккаунт, который загрузил их в ведро. Это свойство позволяет предоставить доступ к этим объектам владельцу ведра.
Примечание
Для использования этого свойства ваша служба CodeBuild должна иметь разрешениеs3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом для ведра.Это свойство может иметь одно из следующих значений:
Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.
Владелец ведра имеет только доступ для чтения к объектам. Загружающий аккаунт сохраняет владение объектами.
Владелец ведра имеет полный доступ к объектам. Владение объектами определяется следующими критериями:
- Если ведро настроено с настройкой Bucket owner preferred, владелец ведра владеет объектами. Загружающий аккаунт будет иметь доступ к объектам в соответствии с политикой ведра.
- В противном случае загружающий аккаунт сохраняет владение объектами.
Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление владение загруженными объектами с помощью S3 Object Ownership в Руководстве пользователя Amazon Simple Storage Service.
cache -> (структура)
Информация о кэше для проекта сборки.
type -> (строка)
Тип кэша, используемого проектом сборки. Допустимые значения включают:
-
NO_CACHE: проект сборки не использует кэш. -
S3: проект сборки читает и записывает в S3. -
LOCAL: проект сборки хранит кэш локально на хосте сборки, доступном только этому хосту.
location -> (строка)
Информация о местоположении кэша:
-
NO_CACHEилиLOCAL: это значение игнорируется. -
S3: это имя/префикс ведра S3.
modes -> (список)
Массив строк, определяющих режимы локального кэша. Вы можете использовать один или несколько режимов локального кэша одновременно. Это используется только для кэшей типа LOCAL.
Возможные значения:
Кэширует метаданные Git для первичных и вторичных источников. После создания кэша последующие сборки извлекают только изменения между коммитами. Этот режим хорошо подходит для проектов с чистым рабочим каталогом и источником, который является большим репозиторием Git. Если вы выбрали этот вариант, а ваш проект не использует репозиторий Git (GitHub, GitHub Enterprise или Bitbucket), этот параметр игнорируется.
Кэширует существующие слои Docker. Этот режим подходит для проектов, которые строят или извлекают большие Docker-образы. Он может предотвратить проблемы производительности, связанные с загрузкой больших Docker-изображений из сети.
Примечание
- Вы можете использовать кэш Docker-слоёв только в среде Linux.
- Флаг
privilegedдолжен быть установлен, чтобы ваш проект имел необходимые разрешения Docker. - Вы должны учитывать потенциальные последствия для безопасности, прежде чем использовать кэш Docker-слоёв.
LOCAL_CUSTOM_CACHE
Кэширует каталоги, указанные в файле buildspec. Этот режим подходит, если сценарий вашей сборки не подходит ни под один из трёх других режимов локального кэша. Если вы используете пользовательский кэш:
- Можно указывать только каталоги для кэширования. Вы не можете указывать отдельные файлы.
- Символьные ссылки используются для ссылки на кэшированные каталоги.
- Кэшированные каталоги связываются с вашей сборкой перед загрузкой исходных кодов проекта. Кэшированные элементы переопределяются, если элемент источника имеет то же имя. Каталоги указываются с помощью путей кэша в файле buildspec.
(строка)
cacheNamespace -> (строка)
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 -> (целое)
memory -> (целое)
disk -> (целое)
machineType -> (строка)
instanceType -> (строка)
fleet -> (структура)
Объект ProjectFleet, который нужно использовать для этого проекта сборки.
fleetArn -> (строка)
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 -> (строка)
registryCredential -> (структура)
Удостоверения для доступа к частному репозиторию.
credential -> (строка)
Amazon Resource Name (ARN) или имя учётных данных, созданных с помощью Secrets Manager.
Примечание
credential может использовать только имя учётных данных, если они существуют в текущем регионе Amazon Web Services.credentialProvider -> (строка)
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 -> (строка)
message -> (строка)
serviceRole -> (строка)
logConfig -> (структура)
Информация о журналах для проекта сборки. Это могут быть журналы в CloudWatch Logs, созданные в указанном ведре S3, или оба типа.
cloudWatchLogs -> (структура)
Информация о CloudWatch Logs для проекта сборки. CloudWatch Logs включены по умолчанию.
status -> (строка)
Текущий статус журналов в CloudWatch Logs для проекта сборки. Допустимые значения:
-
ENABLED: CloudWatch Logs включены для этого проекта сборки. -
DISABLED: CloudWatch Logs не включены для этого проекта сборки.
groupName -> (строка)
streamName -> (строка)
s3Logs -> (структура)
Информация о журналах, созданных в ведре S3 для проекта сборки. Журналы S3 по умолчанию не включены.
status -> (строка)
Текущий статус журналов сборки в S3. Допустимые значения:
-
ENABLED: Журналы сборки в S3 включены для этого проекта сборки. -
DISABLED: Журналы сборки в S3 не включены для этого проекта сборки.
location -> (строка)
my-bucket, а префикс пути — build-log, то допустимые форматы — my-bucket/build-log или arn:aws:s3:::my-bucket/build-log.encryptionDisabled -> (булево)
bucketOwnerAccess -> (строка)
Указывает доступ владельца ведра к объектам, загружаемым другим аккаунтом в ведро Amazon S3. По умолчанию доступ к этим объектам имеет только тот аккаунт, который загрузил их в ведро. Это свойство позволяет предоставить доступ владельцу ведра к этим объектам.
Примечание
Чтобы использовать это свойство, роль вашей службы CodeBuild должна иметь разрешениеs3:PutBucketAcl. Это разрешение позволяет CodeBuild изменять список управления доступом к ведру.Это свойство может принимать следующие значения:
Владелец ведра не имеет доступа к объектам. Это значение по умолчанию.
Владелец ведра имеет только доступ для чтения к объектам. Аккаунт, загрузивший объекты, сохраняет владение ими.
Владелец ведра имеет полный доступ к объектам. Владение объектами определяется по следующим критериям:
- Если ведро настроено со значением Bucket owner preferred, владелец ведра владеет объектами. У загружающего аккаунта будет доступ к объектам в соответствии с политикой ведра.
- В противном случае загружающий аккаунт сохраняет владение объектами.
Дополнительную информацию о владении объектами Amazon S3 см. в разделе Управление владением загруженными объектами с помощью S3 Object Ownership в руководстве пользователя Amazon Simple Storage Service.
buildTimeoutInMinutes -> (целое число)
queuedTimeoutInMinutes -> (целое число)
complete -> (булево)
initiator -> (строка)
Сущность, которая запустила пакетную сборку. Допустимые значения:
- Если сборку запустил CodePipeline, то имя пайплайна (например,
codepipeline/my-demo-pipeline). - Если сборку запустил пользователь, то имя пользователя.
- Если сборку запустил плагин Jenkins для CodeBuild, то строка
CodeBuild-Jenkins-Plugin.
vpcConfig -> (структура)
Информация о конфигурации VPC, к которой имеет доступ CodeBuild.
vpcId -> (строка)
subnets -> (список)
Список одного или нескольких идентификаторов подсетей в вашей Amazon VPC.
(строка)
securityGroupIds -> (список)
Список одного или нескольких идентификаторов групп безопасности в вашей Amazon VPC.
(строка)
encryptionKey -> (строка)
Ключ управления ключами (CMK) службы управления ключами (KMS), который будет использоваться для шифрования выходных артефактов пакетной сборки.
Примечание
Можно использовать меж-аккаунтовый ключ KMS для шифрования выходных артефактов сборки, если ваша роль службы имеет разрешения на этот ключ.Можно указать либо Amazon Resource Name (ARN) CMK, либо, если доступен, псевдоним CMK (с использованием формата alias/<alias-name>).
buildBatchNumber -> (длинное целое число)
buildBatchNumber первого пакетного запуска 1. buildBatchNumber каждого последующего пакетного запуска увеличивается на 1. Если пакетная сборка удаляется, buildBatchNumber других пакетных сборок не меняется.fileSystemLocations -> (список)
Массив объектов ProjectFileSystemLocation для проекта пакетной сборки. Объект 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 -> (строка)
nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2. Дополнительную информацию см. в разделе Рекомендованные параметры монтирования NFS.buildBatchConfig -> (структура)
Содержит конфигурационную информацию о проекте пакетной сборки.
serviceRole -> (строка)
combineArtifacts -> (булево)
restrictions -> (структура)
Объект BatchRestrictions, который указывает ограничения для пакетной сборки.
maximumBuildsAllowed -> (целое число)
computeTypesAllowed -> (список)
Массив строк, указывающих типы вычислительных ресурсов, разрешенные для пакетной сборки. См. Типы вычислительных ресурсов среды сборки в руководстве пользователя CodeBuild для получения этих значений.
(строка)
fleetsAllowed -> (список)
Массив строк, указывающих флоты, разрешенные для пакетной сборки. См. Запуск сборок на резервируемых флотах вычислительных мощностей в руководстве пользователя CodeBuild для получения дополнительной информации.
(строка)
timeoutInMins -> (целое число)
batchReportMode -> (строка)
Указывает, как отчеты о состоянии сборки отправляются поставщику источника для пакетной сборки. Это свойство используется только в том случае, если поставщиком источника вашего проекта являются Bitbucket, GitHub или GitHub Enterprise, а ваш проект настроен на отправку отчетов о состоянии сборки поставщику источника.
(По умолчанию) Объединяет все состояния сборки в один отчет.
Отправляет отдельный отчет о состоянии для каждой отдельной сборки.
buildGroups -> (список)
Массив объектов BuildGroup, определяющих группы сборки для пакетной сборки.
(структура)
Содержит информацию о группе сборки пакетной сборки. Группы сборки используются для объединения сборок, которые могут выполняться параллельно, при этом сохраняя возможность устанавливать зависимости от других групп сборки.
identifier -> (строка)
dependsOn -> (список)
Массив строк, содержащих идентификаторы групп сборки, от которых зависит данная группа сборки.
(строка)
ignoreFailure -> (булево)
currentBuildSummary -> (структура)
Объект BuildSummary, содержащий сводку текущей группы сборки.
arn -> (строка)
requestedOn -> (метка времени)
buildStatus -> (строка)
Статус группы сборки.
Группа сборки завершилась неудачно.
Группа сборки завершилась с ошибкой.
Группа сборки все еще выполняется.
Группа сборки остановлена.
Группа сборки завершилась успешно.
Группа сборки превысила лимит времени.
primaryArtifact -> (структура)
Объект ResolvedArtifact, представляющий основные артефакты сборки для группы сборки.
type -> (строка)
location -> (строка)
identifier -> (строка)
secondaryArtifacts -> (список)
Массив объектов ResolvedArtifact, представляющий вторичные артефакты сборки для группы сборки.
(структура)
Представляет разрешенный артефакт сборки. Разрешенный артефакт — это артефакт, который был собран и развернут в назначенное место, например, в Amazon S3.
type -> (строка)
location -> (строка)
identifier -> (строка)
priorBuildSummaryList -> (список)
Массив объектов BuildSummary, содержащих сводки предыдущих групп сборки.
(структура)
Содержит сводную информацию о группе пакетной сборки.
arn -> (строка)
requestedOn -> (метка времени)
buildStatus -> (строка)
Статус группы сборки.
Группа сборки завершилась неудачно.
Группа сборки завершилась с ошибкой.
Группа сборки все еще выполняется.
Группа сборки остановлена.
Группа сборки завершилась успешно.
Группа сборки превысила лимит времени.
primaryArtifact -> (структура)
Объект ResolvedArtifact, представляющий основные артефакты сборки для группы сборки.
type -> (строка)
location -> (строка)
identifier -> (строка)
secondaryArtifacts -> (список)
Массив объектов ResolvedArtifact, представляющий вторичные артефакты сборки для группы сборки.
(структура)
Представляет разрешенный артефакт сборки. Разрешенный артефакт — это артефакт, который был собран и развернут в назначенное место, например, в Amazon S3.
type -> (строка)
location -> (строка)
identifier -> (строка)
debugSessionEnabled -> (булево)
reportArns -> (список)
Массив, содержащий ARN созданных отчетов путем объединения отчетов из сборок, связанных с этой пакетной сборкой.
(строка)
© Copyright 2025, Amazon Web Services. Created using Sphinx.