Type de compilation : compilation Cloud Build v1

Cette page décrit le type de compilation. pour Cloud Build.

Définition de la compilation

Paramètres externes

Le tableau suivant présente les types de paramètres externes pouvant être utilisés dans une compilation Cloud Build. Les paramètres externes sont des valeurs spécifier et ne sont pas présentes dans votre configuration de compilation. 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 que qui a déclenché la compilation (compilations déclenchées par un événement SCM) ou gitFileSource pour tous les autres types de déclencheurs.

buildConfigSource OU buildConfig (dans la configuration de compilation intégrée) est définie.
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 (commençant par refs/) ou un SHA de commit (hex minuscule). 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 la configuration de compilation avec le protocole https://. Ce nom sera préfixé avec un git+ pour assurer la compatibilité avec SPDX . Pour en savoir plus sur les exigences relatives au format, consultez ResourceURI.
buildConfigSource.path chaîne Chemin d'accès au fichier de configuration de compilation dans le commit. Exemple: cloudbuild.yaml

Mutuellement exclusif avec pathAutodetect. Un seul de ces champs doit être défini sur une valeur autre que celle 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. Faux est considéré équivaut à "not set" ; Cloud Build utilise plutôt path si la détection automatique n'était pas activée.

Exclusivité mutuelle avec path. Exactement une de ces options les champs DOIVENT être définis sur une valeur autre que celle par défaut.
sourceToBuild objet Code source qui a été extrait et créé. En général, c'est la même chose en tant que buildConfigSource ; cela ne change que si le gitFileSource est défini pour BuildTrigger.

Ce champ n'existe pas si les règles repository et ref sont identiques à buildConfigSource et dir est vide.

Dans BuildTrigger, cela correspond à sourceToBuild ou le commit ayant déclenché la compilation, en fonction du type de déclencheur.
sourceToBuild.ref chaîne Référence Git dans sourceToBuild.repository qui était comme référence Git complète (commençant par refs/) ou SHA de commit (hex minuscule). Un SHA de commit est n'est utilisé que s'il est spécifié dans le déclencheur.
sourceToBuild.repository chaîne URI HTTPS du dépôt Git qui a été récupéré, avec Protocole https://. Ce nom est précédé du préfixe git+
sourceToBuild.dir chaîne Répertoire du commit dans lequel exécuter la compilation, sans barre oblique finale. Ce champ peut être vide ou non défini.
buildConfig chaîne Lorsqu'une configuration de compilation intégrée est fournie, par exemple dans un la compilation envoyée, les informations suivantes sont enregistrées.

- étapes
- Options de compilation (variables d'environnement, volumes, nœuds de calcul, etc.) détails du pool, du type de machine, des 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 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<string,string></string,string> Carte de (chaîne -> chaîne) contenant les substitutions à effectuer la ressource Build.

Il ne contient que "environnement d'exécution" ou "indépendant" des substitutions qui ne sont pas enregistré dans la configuration de compilation, c'est-à-dire transmis à partir d'un déclencheur ou d'une option de gcloud CLI.

Cet enregistrement n'inclut pas les substitutions par défaut fournies par le système, puisqu'elles sont considéré comme internalParameters.

Les substitutions apparaissent dans ce champ, qu'elles soient référencées ou utilisée 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 Substitutions par défaut.

Champ Détails
triggerUri URI de ressource du déclencheur qui a appelé cette compilation. Dans ce cas, nom complet de la ressource.

Si la compilation n'a pas été déclenchée, cet élément est omis.
systemSubstitutions Il existe un sous-ensemble de valeurs de substitution par défaut : sont automatiquement fournis dans les builds Cloud Build, tels que PROJECT_ID et BUILD_ID.

Si vous écrasez l'une des substitutions par défaut de Cloud Build, votre Les substitutions ne seront pas affichées ici. Vos valeurs seront répertoriées dans externalParameters.substitutions à la place.

Dépendances résolues

Si la compilation dispose d'un dépôt source ou d'un dépôt de configuration de compilation, est décrit dans la documentation resolvedDependencies de BuildDefinition.

ResolvedDependencies est conforme aux Spécification ResourceDescriptor.


Type de dépendance

Détails

Dépôt de configuration de compilation

Dépôt dans lequel la configuration de compilation (c'est-à-dire cloudbuild.yaml) a été dans le cas de compilations déclenchées.


Ce champ peut être vide dans le cas d'une configuration de compilation qui n'était pas lu à partir d'un dépôt et fourni de façon intégrée, auquel cas il est omis.

Dépôt source

Le dépôt à partir duquel le code source à compiler a été extrait. Cela pourrait être la même chose que buildConfigSource ou différent. Si la valeur est identique à buildConfigSource, le sourceToBuild est omis, pour dans les builds déclenchés par SCM.

sourceToBuild peut être vide si la compilation est exécutée via –no-source, et sera omise.

Par exemple, les informations resolvedDependencies suivantes contiennent à la fois un buildConfigRepo et sourceRepo (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 exécuté l'opération et renseigné cette provenance. Il contient également le niveau de 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 de la compilation. invocationId affiche l'URL de la compilation, par exemple https://cloudbuild.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/builds/BUILD_ID
: champs startedOn et finishedOn contiennent les codes temporels du début et de la fin de la compilation.
produits secondaires Pas encore utilisé. Conçu pour contenir des des artefacts qui ne sont pas considérés comme des sorties de compilation, 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 répertoriées dans externalParameters.substitutions à la place.