Build-Typ: Google Builder

Auf dieser Seite wird der Build-Typ „SLSA V1.0“ erläutert. für den Google Builder.

Externe Parameter

In der folgenden Tabelle sind die Typen externer Parameter aufgeführt, die in einer Definition für Workflow PipelineRun und Workflow TaskRun verwendet werden können. Soweit nicht anders sind alle Parameter erforderlich.

Feld Typ Details

runSpec

Objekt

Die vollständige PipelineRun-Spezifikation.

buildConfigSource

Objekt

Die vollständige buildConfigSource-Spezifikation.

PipelineRun-Spezifikation

Feld Typ Details

pipelineRef/taskRef

Objekt

Von wo aus pipelineSpec/taskSpec gelesen wurde.

Dieses Feld wird nur ausgefüllt, wenn auf die Pipeline-Spezifikation von einer Remotequelle verwiesen wurde.

Standardwert: null

pipelineSpec/taskSpec

Objekt

Eingebettete Pipeline-/Aufgabenspezifikation, die nicht mit pipelineRef/taskRef aus einer Remote-Quelle abgerufen wird.

[Optional].

params

[object]

Zuordnung von Parameternamen und Werten, die an die Pipeline übergeben werden. Werte können Strings, Arrays oder Objekte sein.

Standardwert: null

Hinweis: Bei einem ausgelösten Workflow enthält dieses Feld neben den vom Nutzer in der Workflowdefinition konfigurierten Parametern auch einige Parameter, die vom Cloud Build-Triggersystem bereitgestellt werden.

Arbeitsbereiche

[object]

„Workspaces“ enthält eine Reihe von Arbeitsbereichsbindungen, deren Namen mit den in der Pipeline deklarierten Namen übereinstimmen müssen.

Standardwert: null

Zeitüberschreitungen/Zeitüberschreitung

Objekt

Zeit, nach der die Pipeline das Zeitlimit überschreitet. Zeitüberschreitungen können definiert werden für Pipeline, Tasks und End. Sie sind durch die Formel miteinander verknüpft: Timeouts.pipeline Timeouts.tasks + Timeouts.finally.

buildConfigSource-Spezifikation

Feld Typ Details

Ref

Objekt

folgende Arten von Werten sind möglich:

  • Git-Referenz Beispiel: Die Commit-SHA: sha1:563f0...
  • Der Image-Digest. Beispiel: sha256:91fbe...

Repository

String

Der URI des Git-Repositorys oder des Image-Repositorys

Pfad

String

Der Pfad im Git-Repository oder der Ressourcenname im Image Set.

Interne Parameter

Die internen Parameter werden vom Builder für den Build-Prozess bereitgestellt.

Feld Typ Details
tekton-pipelines-feature-flags Objekt Für den Build verwendete Flags der Tekton-Konfigurationsfunktionen. Sie werden vom Builder konfiguriert und sind für die Reproduzierbarkeit nützlich.
systemParameters Objekt Eine Liste von Name/Wert-Paaren für Standardsystemersetzungen, die von GCB bereitgestellt werden.

Behobene Abhängigkeiten

Das Feld resolvedDependencies muss Einträge enthalten die aufgelöste Referenz identifiziert, externalParameters.configRef. Dies ist die Referenz auf die Pipeline im Fall einer PipelineRun-Spezifikation oder die Referenz auf die Aufgabe im Fall einer TaskRun-Spezifikation.

Die aufgelösten Abhängigkeiten können zusätzliche Artefakte enthalten, die Eingaben für dem Build. Verwenden Sie dabei das Feld name, um den Typ des Artefakts anzugeben:

  • Verwenden Sie für Remote-Pipelines name: pipeline.
  • Verwenden Sie für Remote-Aufgaben name: pipelineTask.
  • Für einen aufgelösten Verweis auf einen Schritt oder ein Sidecar-Container-Image: name ist optional. Im Fall des Felds digest muss der Bild-Digest angegeben werden, auch wenn das Bild durch ein Tag referenziert wird.
  • Verwenden Sie name: inputs/result für andere für den Build verwendete Eingabeartefakte wie Quellcode. Für die Ergebnisse der Aufgabe wird eine Typhinweis verwendet.

Das folgende Beispiel enthält Informationen zu allen Arten von behobenen Abhängigkeiten:

"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

Feld Details
Builder Enthält ein id-Unterfeld, das die Build-Plattform identifiziert, die ausgeführt und die Herkunft gefüllt. Es enthält auch auf der SLSA-Ebene. Der erwartete id-Wert ist einer der folgenden:
  • https://cloudbuild.googleapis.com/GoogleBuilder Dieses Die Builder-ID gibt einen SLSA L2-Wert an. erstellen.
  • https://cloudbuild.googleapis.com/GoogleIsolatedBuilder. Diese Builder-ID gibt einen SLSA-L3-Build an.
Metadaten Zusätzliche Metadaten zu dieser bestimmten Ausführung des Builds. Unter invocationId wird die URL des Builds angezeigt, z. B. https://cloudbuild.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/pipelineRuns/BUILD_ID.
 Die Felder startedOn und finishedOn enthalten die Zeitstempel für den Beginn und das Ende des Builds.
Nebenprodukte Ein results-Objekt.
Enthält die vom PipelineRun erzeugten TaskRunResults. Der Inhalt ist in Base64 codiert.