build 类型:Google Builder

本页介绍了 Google Builder 的 SLSA V1.0 build 类型定义。

外部参数

下表显示了可以使用的外部参数类型 。除非另有说明 如前所述,所有参数均为必需参数。

字段 类型 详细信息

runSpec

对象

完整的 PipelineRun 规范

buildConfigSource

对象

完整的 buildConfigSource 规范

PipelineRun 规范

字段 类型 详细信息

pipelineRef/taskRef

对象

从其中读取 PipelinesSpec/taskSpec 的位置。

仅当从远程来源引用了 pipelineSpec 时,才会填充此字段。

默认值:null

pipelineSpec/taskSpec

对象

内嵌流水线/任务规范,未使用 pipelineRef/taskRef.

[可选]。

params

[object]

提供给流水线的参数名称和值的映射。值可以是字符串、数组或对象类型。

默认值:null

注意:如果是触发的工作流,此字段还将包含 Cloud Build 触发系统提供的一些参数 用户在工作流定义中配置的参数之外。

工作区

[object]

工作区包含一组工作区绑定,这些绑定的名称必须与流水线中声明的名称一致。

默认值:null

超时/超时

对象

流水线超时的时间。您可以为以下对象定义超时: “流水线”“任务”和“最终版”它们通过以下公式相关联: Timeouts.pipeline Timeouts.tasks + Timeouts.finally。

buildConfigSource 规范

字段 类型 详细信息

ref

对象

可以是下列选项之一:

  • Git 参考。例如,提交 SHA:sha1:563f0...
  • 映像摘要。例如:sha256:91fbe...

仓库

字符串

Git 代码库 URI 或映像代码库 URI

路径

字符串

Git 代码库中的路径,或映像软件包中的资源名称。

内部参数

内部参数由构建器为构建流程提供。

字段 类型 详细信息
tekton-pipelines-feature-flags 对象 用于构建的 Tekton 配置功能标志。这些是 并且有助于实现可再现性。
systemParameters 对象 GCB 提供的默认系统替换项的名称和值对列表。

已解析的依赖项

resolvedDependencies 字段必须包含条目 识别与以下内容相对应的已解析引用: externalParameters.configRef。如果是 PipelineRun 规范,则是指向流水线的引用;如果是 TaskRun 规范,则是指向任务的引用。

已解析的依赖项可能包含其他工件,作为 build,使用 name 字段指示工件的类型:

  • 对于远程流水线,请使用 name: pipeline
  • 对于远程 Tasks,请使用 name: pipelineTask
  • 对于步骤或 Sidecar 容器映像的解析引用,name 是可选字段。对于 digest 字段,即使图片是 必须添加映像摘要。
  • 对于用于构建的其他输入工件(例如源代码),请使用 name: inputs/result。类型提示用于任务的结果。

以下示例包含有关所有已解析类型的信息 dependencies:

"resolvedDependencies": [
  {
    "name": "pipeline",
    "uri": "git+https://github.com/octocat/hello-world.git",
    "digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"},
  },
  {
  "name": "pipelineTask",
  "uri": "git+https://github.com/octocat/hello-world.git",
  "digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"},
  },
  {
  "uri": "gcr.io/tekton-releases/github.com/tektoncd/pipeline/cmd/git-init",
  "digest": {
    "sha256": "28ff94e63e4058afc3f15b4c11c08cf3b54fa91faa646a4bbac90380cd7158df"},
  },
  {
  "name": "inputs/result",
  "uri": "git+https://github.com/octocat/hello-world.git",
  "digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"},
  }
]

RunDetails

字段 详细信息
构建器 包含 id 子字段,用于标识 执行操作并填充此出处。这还包含 SLSA 级别预期的 id 值是以下值之一:
  • https://cloudbuild.googleapis.com/GoogleBuilder。这个 构建器 ID 表示 SLSA L2 build。
  • https://cloudbuild.googleapis.com/GoogleIsolatedBuilder。 此构建器 ID 表示 SLSA L3 build。
元数据 有关这一特定构建执行的其他元数据。 invocationId 会显示 build 的网址,例如 https://cloudbuild.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/pipelineRuns/BUILD_ID
startedOnfinishedOn 字段包含构建开始和完成的时间戳。
副产品 results 对象。
包含 PipelineRun 生成的 TaskRunResult。内容 采用 Base64 编码。