En esta página, se explica la definición de tipo de compilación de SLSA v1.0 para Google Builder.
Parámetros externos
En la siguiente tabla, se muestran los tipos de parámetros externos que se pueden usar en una definición de Workflow PipelineRun y Workflow TaskRun. A menos que se indique lo contrario, todos los parámetros son obligatorios.
Campo | Tipo | Detalles |
---|---|---|
runSpec |
objeto |
La especificación de PipelineRun completa. |
buildConfigSource |
objeto |
Especificación de PipelineRun
Campo | Tipo | Detalles |
---|---|---|
pipelineRef/taskRef |
objeto |
De dónde se leyó pipelineSpec/taskSpec. Este campo solo se propaga si se hizo referencia a pipelineSpec desde una fuente remota. Valor predeterminado: |
pipelineSpec/taskSpec |
objeto |
Especificación de canalización o tarea intercalada, que no se recupera de una fuente remota con pipelineRef/taskRef. [Opcional]. |
params |
[object] |
Es un mapa de los nombres y valores de los parámetros proporcionados a la canalización. Los valores pueden ser de tipo cadena, array o objeto. Valor predeterminado: Nota: En el caso de un flujo de trabajo activado, este campo también contendrá algunos parámetros proporcionados por el sistema de activación de Cloud Build, además de los parámetros que configuró el usuario en la definición del flujo de trabajo. |
lugares de trabajo |
[object] |
Los lugares de trabajo contienen un conjunto de vinculaciones de lugares de trabajo que deben coincidir con los nombres declarados en la canalización. Valor predeterminado: |
tiempos de espera/tiempo de espera |
objeto |
Es el tiempo después del cual se agota el tiempo de espera de la canalización. Los tiempos de espera se pueden definir para Canalización, Tareas y Finalmente. Se relacionan con la fórmula Timeouts.pipeline Timeouts.tasks + Timeouts.finally. |
Especificación de buildConfigSource
Campo | Tipo | Detalles |
---|---|---|
ref |
objeto |
Puede ser una de las siguientes:
|
repositorio |
string |
El URI del repositorio de Git o el URI del repositorio de imágenes |
path |
string |
Es la ruta de acceso en el repositorio de git o el nombre del recurso en el paquete de imagen. |
Parámetros internos
El compilador proporciona los parámetros internos para el proceso de compilación.
Campo | Tipo | Detalles |
---|---|---|
tekton-pipelines-feature-flags | objeto | Marcas de función de configuración de Tekton que se usan para la compilación. El compilador los configura y son útiles para la reproducibilidad. |
systemParameters | objeto | Es una lista de pares de nombre y valor para las sustituciones predeterminadas del sistema que proporciona GCB. |
Dependencias resueltas
El campo resolvedDependencies
debe contener entradas que identifiquen la referencia resuelta correspondiente a externalParameters.configRef
. Esta es la referencia a la canalización, en el caso de una especificación de PipelineRun, o la referencia a la tarea, en el caso de una especificación de TaskRun.
Las dependencias resueltas pueden contener artefactos adicionales que son entradas para la compilación, que usan el campo name
para indicar el tipo de artefacto:
- Para canalizaciones remotas, usa
name: pipeline
. - Para Tasks remoto, usa
name: pipelineTask
. - Para una referencia resuelta a un paso o a una imagen de contenedor del sidecar, el campo
name
es opcional. En el caso del campodigest
, incluso si se hace referencia a la imagen con una etiqueta, se debe incluir el resumen de la imagen. - Para otros artefactos de entrada que se usan para la compilación, como el código fuente, usa
name: inputs/result
. Las sugerencias de tipo se usan para los resultados de la tarea.
El siguiente ejemplo contiene información sobre todos los tipos de dependencias resolvidas:
"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
Campo | Detalles |
---|---|
compilador | Contiene un subcampo id que identifica la plataforma de compilación que ejecutó la operación y propagó esta procedencia. También contiene el nivel de SLSA. El valor esperado de id es uno de los siguientes:
|
metadatos | Son metadatos adicionales sobre esta ejecución en particular de la compilación.
invocationId muestra la URL de la compilación, como https://cloudbuild.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/pipelineRuns/BUILD_ID .
Los campos startedOn y finishedOn contienen las marcas de tiempo de cuándo comenzó y se completó la compilación.
|
subproductos | Un objeto results .Contiene los TaskRunResults que produce PipelineRun. El contenido está codificado en Base64. |