本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
本主题包含批量构建属性的 buildspec 参考。
批处理
可选的映射。项目的批量构建设置。
- batch/fast-fail
-
可选。指定当一个或多个构建任务失败时的批量构建行为。
false
-
默认值。所有正在运行的构建都会完成。
true
-
当其中一个构建任务失败时,所有正在运行的构建都将停止。
默认情况下,所有批量构建任务运行时,都使用 buildspec 文件中指定的构建设置(例如 env
和 phases
)。您可以通过在 batch/
参数中指定不同的 <batch-type>
/buildspecenv
值或其他 buildspec 文件来覆盖默认的构建设置。
该 batch
属性的内容因所指定的批量构建类型而异。可能的批量构建类型如下:
batch/build-graph
定义构建图。构建图定义了一组任务,这些任务依赖于批量处理中的其他任务。有关更多信息,请参阅 构建图。
该元素包含一组构建任务。每个构建任务都包含以下属性。
- identifier
-
必需。任务的标识符。
- buildspec
可选。要用于此任务的 buildspec 文件的路径和文件名。如果未指定此参数,将使用当前的 buildspec 文件。
- debug-session
-
可选。布尔值,指示是否为此批量构建启用会话调试。有关会话调试的更多信息,请参阅使用会话管理器调试构建。
false
-
会话调试已禁用。
true
-
会话调试已启用。
- depend-on
-
可选。此任务所依赖的一组任务标识符。在这些任务完成之前,此任务不会运行。
- env
-
可选。此任务的构建环境覆盖。它可以包含以下属性:
- compute-type
-
用于该任务的计算类型的标识符。请参见构建环境计算模式和类型中的 computeType,了解可能使用的值。
- 舰队
-
用于任务的舰队标识符。请参阅在预留容量实例集上运行构建了解更多信息。
- image
-
用于该任务的映像的标识符。请参阅 提供的 Docker 镜像 CodeBuild中的映像标识符,了解可能使用的值。
- privileged-mode
-
布尔值,指示是否在 Docker 容器内运行 Docker 守护程序。仅在构建项目用于构建 Docker 映像时设置为
true
。否则,尝试与 Docker 守护程序进行交互的构建将失败。默认设置为false
。 - type
-
用于该任务的环境类型的标识符。请参阅构建环境计算模式和类型中的环境类型,了解可能使用的值。
- variables
-
构建环境中将存在的环境变量。请参阅env/variables了解更多信息。
注意
请注意,计算类型和舰队不能在单个版本的同一标识符中提供。
- ignore-failure
-
可选。布尔值,用于指示是否可以忽略此构建任务的故障。
false
-
默认值。如果此构建任务失败,则批量构建将失败。
true
-
如果此构建任务失败,则批量构建仍然可以成功。
以下是构建图 buildspec 条目的示例:
batch:
fast-fail: false
build-graph:
- identifier: build1
env:
variables:
BUILD_ID: build1
ignore-failure: false
- identifier: build2
buildspec: build2.yml
env:
variables:
BUILD_ID: build2
depend-on:
- build1
- identifier: build3
env:
variables:
BUILD_ID: build3
depend-on:
- build2
- identifier: build4
env:
compute-type: ARM_LAMBDA_1GB
- identifier: build5
env:
fleet: fleet_name
batch/build-list
定义构建列表。构建列表用于定义多个并行运行的任务。有关更多信息,请参阅 构建列表。
该元素包含一组构建任务。每个构建任务都包含以下属性。
- identifier
-
必需。任务的标识符。
- buildspec
可选。要用于此任务的 buildspec 文件的路径和文件名。如果未指定此参数,将使用当前的 buildspec 文件。
- debug-session
-
可选。布尔值,指示是否为此批量构建启用会话调试。有关会话调试的更多信息,请参阅使用会话管理器调试构建。
false
-
会话调试已禁用。
true
-
会话调试已启用。
- env
-
可选。此任务的构建环境覆盖。它可以包含以下属性:
- compute-type
-
用于该任务的计算类型的标识符。请参见构建环境计算模式和类型中的 computeType,了解可能使用的值。
- 舰队
-
用于任务的舰队标识符。请参阅在预留容量实例集上运行构建了解更多信息。
- image
-
用于该任务的映像的标识符。请参阅 提供的 Docker 镜像 CodeBuild中的映像标识符,了解可能使用的值。
- privileged-mode
-
布尔值,指示是否在 Docker 容器内运行 Docker 守护程序。仅在构建项目用于构建 Docker 映像时设置为
true
。否则,尝试与 Docker 守护程序进行交互的构建将失败。默认设置为false
。 - type
-
用于该任务的环境类型的标识符。请参阅构建环境计算模式和类型中的环境类型,了解可能使用的值。
- variables
-
构建环境中将存在的环境变量。请参阅env/variables了解更多信息。
注意
请注意,计算类型和舰队不能在单个版本的同一标识符中提供。
- ignore-failure
-
可选。布尔值,用于指示是否可以忽略此构建任务的故障。
false
-
默认值。如果此构建任务失败,则批量构建将失败。
true
-
如果此构建任务失败,则批量构建仍然可以成功。
以下是构建列表 buildspec 条目的示例:
batch:
fast-fail: false
build-list:
- identifier: build1
env:
variables:
BUILD_ID: build1
ignore-failure: false
- identifier: build2
buildspec: build2.yml
env:
variables:
BUILD_ID: build2
ignore-failure: true
- identifier: build3
env:
compute-type: ARM_LAMBDA_1GB
- identifier: build4
env:
fleet: fleet_name
- identifier: build5
env:
compute-type: GENERAL_LINUX_XLAGRE
batch/build-matrix
定义构建矩阵。生成矩阵定义了并行运行的具有不同配置的任务。 CodeBuild 为每种可能的配置组合创建单独的版本。有关更多信息,请参阅 构建矩阵。
- static
-
静态属性适用于所有构建任务。
- ignore-failure
-
可选。布尔值,用于指示是否可以忽略此构建任务的故障。
false
-
默认值。如果此构建任务失败,则批量构建将失败。
true
-
如果此构建任务失败,则批量构建仍然可以成功。
- env
-
可选。所有任务的构建环境覆盖。
- privileged-mode
-
布尔值,指示是否在 Docker 容器内运行 Docker 守护程序。仅在构建项目用于构建 Docker 映像时设置为
true
。否则,尝试与 Docker 守护程序进行交互的构建将失败。默认设置为false
。 - type
-
用于该任务的环境类型的标识符。请参阅构建环境计算模式和类型中的环境类型,了解可能使用的值。
- dynamic
-
动态属性定义构建矩阵。
- buildspec
-
可选。数组,其中包含用于这些任务的 buildspec 文件的路径和文件名。如果未指定此参数,将使用当前的 buildspec 文件。
- env
-
可选。这些任务的构建环境覆盖。
- compute-type
-
数组,包含用于这些任务的计算类型的标识符。请参见构建环境计算模式和类型中的 computeType,了解可能使用的值。
- image
-
数组,包含用于这些任务的映像的标识符。请参阅 提供的 Docker 镜像 CodeBuild中的映像标识符,了解可能使用的值。
- variables
-
数组,其中包含这些任务的构建环境中将存在的环境变量。请参阅env/variables了解更多信息。
以下是构建矩阵 buildspec 条目的示例:
batch:
build-matrix:
static:
ignore-failure: false
dynamic:
buildspec:
- matrix1.yml
- matrix2.yml
env:
variables:
MY_VAR:
- VALUE1
- VALUE2
- VALUE3
有关更多信息,请参阅 构建矩阵。
batch/build-fanout
定义构建扇出。build fanout 用于定义一个任务,该任务分成多个并行运行的构建。有关更多信息,请参阅 在批量构建中执行并行测试。
此元素包含一个可以拆分为多个版本的生成任务。该build-fanout
部分包含以下属性。
- 平行性
-
必需。将并行运行测试的版本数量。
- ignore-failure
-
可选。一个布尔值,用于指示是否可以忽略任何扇出构建任务中的失败。此忽略失败值将应用于所有扇出构建。
- false
-
默认值。如果任何扇出构建任务失败,则批量构建将失败。
- true
-
如果任何扇出构建任务失败,则批量构建仍然可以成功。
以下是 build fanout buildspec 条目的示例:
version: 0.2
batch:
fast-fail: false
build-fanout:
parallelism: 5
ignore-failure: false
phases:
install:
commands:
- npm install
build:
commands:
- mkdir -p test-results
- cd test-results
- |
codebuild-tests-run \
--test-command 'npx jest --runInBand --coverage' \
--files-search "codebuild-glob-search '**/test/**/*.test.js'" \
--sharding-strategy 'equal-distribution'
有关更多信息,请参阅建立粉丝群 和使用 C codebuild-tests-run LI 命令。