Cette page explique le type de compilation pour Cloud Build.
Définition de compilation
Paramètres externes
Le tableau suivant présente les types de paramètres externes pouvant être utilisés dans un build Cloud Build. Les paramètres externes sont des valeurs que vous spécifiez et qui ne sont pas présentes dans la configuration de votre build. Cela inclut les paramètres de déclencheur qui ne figurent pas dans votre fichier cloudbuild.yaml
.
Champ | Type | Détails |
---|---|---|
buildConfigSource | objet | Emplacement à partir duquel la configuration de compilation a été lue. Dans BuildTrigger , cela correspond au dépôt source qui a déclenché la compilation (compilations déclenchées par événement SCM) ou à gitFileSource pour tous les autres types de déclencheurs.buildConfigSource OU buildConfig (dans le cas d'une configuration de compilation intégrée) sera défini. |
buildConfigSource.ref | chaîne | Référence Git dans buildConfigSource.repository à partir de laquelle la configuration a été lue, sous la forme d'une référence git entièrement qualifiée (commençant par refs/ ) ou d'un SHA de commit (hexadécimal en minuscules). Un SHA de commit n'est utilisé que s'il est spécifié dans le déclencheur. |
buildConfigSource.repository | chaîne | URI HTTPS du dépôt git contenant le fichier de configuration de compilation, avec le protocole https:// . Il sera précédé d'un git+ pour assurer la compatibilité avec le format SPDX. Pour en savoir plus sur les exigences de format, consultez la section ResourceURI. |
buildConfigSource.path | chaîne | Chemin d'accès au fichier de configuration de compilation dans le commit. Exemple :
cloudbuild.yaml S'exclut mutuellement avec pathAutodetect. Un seul de ces champs doit être défini sur une valeur autre que la valeur par défaut. |
buildConfigSource.pathAutoDetect | booléen | Si la valeur est "true", path a été détecté automatiquement, ce qui correspond à l'option de détection automatique dans BuildTrigger . La valeur "false" est considérée comme équivalente à "not set". Cloud Build utilise plutôt path si la détection automatique n'a pas été activée.Exclut path . Un seul de ces champs DOIT être défini sur une valeur autre que la valeur par défaut. |
sourceToBuild | objet | Code source extrait et compilé. Normalement, il s'agit de la même valeur que buildConfigSource . Il ne diffère que si gitFileSource est défini pour BuildTrigger.Ce champ n'existe pas si repository et ref sont identiques à buildConfigSource et si dir est vide.Dans BuildTrigger, cela correspond à sourceToBuild ou au commit qui a déclenché la compilation, en fonction du type de déclencheur. |
sourceToBuild.ref | chaîne | Référence Git dans sourceToBuild.repository qui a été récupérée, sous la forme d'une référence git entièrement qualifiée (commençant par refs/ ) ou d'un SHA de commit (hexadécimal en minuscules). Un SHA de commit n'est utilisé que s'il est spécifié dans le déclencheur. |
sourceToBuild.repository | chaîne | URI HTTPS du dépôt Git extrait, avec le protocole https:// . Il sera précédé d'un git+ . |
sourceToBuild.dir | chaîne | Répertoire du commit dans lequel exécuter la compilation, sans barre oblique finale. Peut être vide, non défini. |
buildConfig | chaîne | Lorsqu'une configuration de compilation intégrée est fournie, comme dans un build envoyé manuellement, les informations suivantes sont enregistrées. - steps - options de compilation (par exemple, variables d'environnement, volumes, détails du pool de nœuds de calcul, machineType, détails des journaux) - substitutions Si la configuration de compilation a été lue à partir d'un dépôt, elle est enregistrée dans la section buildConfigSource et la configuration de compilation intégrée est omise.Ces informations sont stockées sous la forme d'une chaîne JSON sérialisée encodée en base64. |
substitutions | map<chaîne,chaîne></chaîne,chaîne> | Mappage (chaîne -> chaîne) contenant les substitutions à effectuer sur la ressource de compilation. Elle ne contient que des substitutions "d'exécution" ou "indépendantes" qui ne sont pas enregistrées dans la configuration de compilation, c'est-à-dire transmises à partir d'un déclencheur ou d'un indicateur de la CLI gcloud. Cet enregistrement n'inclut pas les substitutions par défaut fournies par le système, car elles sont considérées comme internalParameters .Les substitutions apparaissent dans ce champ, qu'elles soient référencées ou utilisées dans la configuration de compilation. |
Paramètres internes
Le tableau suivant affiche les paramètres internes que Cloud Build définit pour la compilation, sauf si vous les remplacez. Pour en savoir plus, consultez la section Substitutions par défaut.
Champ | Détails |
---|---|
triggerUri | URI de la ressource du déclencheur qui a appelé cette compilation, dans ce cas le nom complet de la ressource. Si la compilation n'a pas été déclenchée, cet élément est omis. |
systemSubstitutions | Un sous-ensemble de valeurs de substitution par défaut est automatiquement fourni dans les builds Cloud Build, comme PROJECT_ID et BUILD_ID .Si vous remplacez l'une des substitutions par défaut de Cloud Build, vos substitutions ne s'afficheront pas ici. Vos valeurs seront listées dans externalParameters.substitutions à la place.
|
Dépendances résolues
Si le build dispose d'un dépôt source ou d'un dépôt de configuration de compilation, le dépôt est décrit dans la section resolvedDependencies
de BuildDefinition
.
ResolvedDependencies
est conforme à la spécification ResourceDescriptor
.
Type de dépendance |
Détails |
---|---|
Dépôt de configuration de compilation |
Dépôt à partir duquel la configuration de compilation (c'est-à-dire le cloudbuild.yaml ) a été extraite, dans le cas de compilations déclenchées.Ce champ peut être vide dans le cas d'une configuration de compilation qui n'a pas été lue à partir d'un dépôt et qui est fournie en ligne, auquel cas elle sera omise. |
Dépôt source |
Dépôt à partir duquel le code source à compiler a été extrait. Il peut être identique à buildConfigSource ou différent. Si la valeur est identique à buildConfigSource , sourceToBuild est omis, par exemple dans les builds déclenchés par SCM.
Le sourceToBuild peut être vide si la compilation est exécutée via –no-source et sera omis. |
Par exemple, les informations resolvedDependencies
suivantes contiennent à la fois un buildConfigRepo et un sourceRepo (qui sont identiques), ainsi qu'une image d'étape de compilation.
"resolvedDependencies": [
{
"uri": "git+https://github.com/octocat/hello-world.git",
"digest": {"sha1": "7fd1a60b01f91b314f59955a4e4d4e80d8edf11d"}
}, {
"uri": "gcr.io/cloud-builders/git",
"digest": {
"sha256": "28ff94e63e4058afc3f15b4c11c08cf3b54fa91faa646a4bba7158df"}
}
]
RunDetails
Champ | Détails |
---|---|
compilateur | Contient un sous-champ id qui identifie la plate-forme de compilation qui a exécuté l'opération et renseigné cette provenance. Il contient également le niveau SLSA. La valeur id attendue est https://cloudbuild.googleapis.com/GoogleHostedWorker . |
métadonnées | Métadonnées supplémentaires sur cette exécution particulière du build.
invocationId affiche l'URL du build, par exemple https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/builds/BUILD_ID .
Les champs startedOn et finishedOn contiennent les codes temporels de début et de fin de la compilation.
|
sous-produits | Pas encore utilisé. Conçu pour contenir des artefacts supplémentaires qui ne sont pas considérés comme le résultat du build, mais qui peuvent être utiles pour le dépannage ou la gestion des incidents. |
systemSubstitutions | Un sous-ensemble de valeurs de substitution par défaut est automatiquement fourni dans les builds Cloud Build, comme PROJECT_ID et BUILD_ID .Si vous remplacez l'une des substitutions par défaut de Cloud Build, vos substitutions ne s'afficheront pas ici. Vos valeurs seront listées dans externalParameters.substitutions à la place.
|