Cette page décrit le type de compilation SLSA V1.0. pour Google Builder.
Paramètres externes
Le tableau suivant présente les types de paramètres externes pouvant être utilisés dans une définition de Workflow PipelineRun et de Workflow TaskRun. Sauf indication contraire, tous les paramètres sont obligatoires.
Champ | Type | Détails |
---|---|---|
runSpec |
objet |
Spécification PipelineRun complète. |
buildConfigSource |
objet |
Spécification PipelineRun
Champ | Type | Détails |
---|---|---|
pipelineRef/taskRef |
objet |
Emplacement à partir duquel pipelineSpec/taskSpec a été lu. Ce champ n'est renseigné que si la pipelineSpec a été référencée à partir d'une source distante. Valeur par défaut : |
pipelineSpec/taskSpec |
objet |
Spécification de pipeline/tâche intégrée, non extraite d'une source distante à l'aide de pipelineRef/taskRef. [Facultatif]. |
params |
[object] |
Mappage des noms et valeurs des paramètres fournis au pipeline. Les valeurs peuvent être de type chaîne, tableau ou objet. Valeur par défaut : Remarque : En cas de workflow déclenché, ce champ contient également certains paramètres fournis par le système de déclenchement de Cloud Build, en plus des paramètres configurés par l'utilisateur dans la définition du workflow. |
espaces de travail |
[object] |
"Workspace" contient un ensemble de liaisons d'espace de travail qui doivent correspondre avec ceux déclarés dans le pipeline. Valeur par défaut : |
délais avant expiration/délai avant expiration |
objet |
Délai avant expiration du pipeline. Vous pouvez définir des délais avant expiration pour le pipeline, les tâches et les tâches "finally". Ils sont liés par la formule Timeouts.pipeline Timeouts.tasks + Timeouts.finally. |
Spécification buildConfigSource
Champ | Type | Détails |
---|---|---|
ref |
objet |
Les possibilités suivantes s'offrent à vous :
|
dépôt |
chaîne |
URI du dépôt Git ou de l'image |
chemin d'accès |
chaîne |
Chemin d'accès dans le dépôt Git ou nom de la ressource dans le bundle d'images. |
Paramètres internes
Les paramètres internes sont fournis par le compilateur pour le processus de compilation.
Champ | Type | Détails |
---|---|---|
tekton-pipelines-feature-flags | objet | Indicateurs de fonctionnalité de configuration Tekton utilisés pour la compilation. Il s'agit
configurés par le compilateur et sont utiles pour la reproductibilité. |
systemParameters | objet | Liste de paires nom/valeur pour les substitutions système par défaut fournies par GCB. |
Dépendances résolues
Le champ resolvedDependencies
doit contenir des entrées identifiant la référence résolue correspondant à externalParameters.configRef
. Il s'agit de la référence au pipeline, en cas de spécification PipelineRun, ou de la référence à la tâche, en cas de spécification TaskRun.
Les dépendances résolues peuvent contenir des artefacts supplémentaires qui sont des entrées pour la compilation, en utilisant le champ name
pour indiquer le type de l'artefact :
- Pour les pipelines distants, utilisez
name: pipeline
. - Pour les tâches distantes, utilisez
name: pipelineTask
. - Pour une référence résolue à une étape ou à une image de conteneur side-car, le champ
name
est facultatif. Dans le cas du champdigest
, même si l'image est référencée par un tag, le condensé de l'image doit être inclus. - Pour les autres artefacts d'entrée utilisés pour la compilation, comme le code source, utilisez
name: inputs/result
. L'optimisation du type est utilisée pour les résultats de la tâche.
L'exemple suivant contient des informations sur tous les types de dépendances résolues :
"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
Champ | Détails |
---|---|
compilateur | Contient un sous-champ id qui identifie la plate-forme de compilation qui
exécuté l'opération et renseigné cette provenance. Contient également
au niveau SLSA. La valeur id attendue est l'une des suivantes:
|
métadonnées | Métadonnées supplémentaires sur cette exécution particulière de la compilation.
invocationId affiche l'URL du build, par exemple https://cloudbuild.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/pipelineRuns/BUILD_ID .
: champs startedOn et finishedOn
contiennent les codes temporels correspondant au début et à la fin de la compilation.
|
produits secondaires | Un objet results .Contient les résultats de l'exécution du pipeline générés par l'exécution du pipeline. Le contenu est et encodée en base64. |