Déclencheurs Cloud Build

Cloud Build utilise des déclencheurs de compilation pour activer l'automatisation CI/CD. Vous pouvez configurer des déclencheurs pour écouter les événements entrants, par exemple lorsqu'un nouveau commit est vers un dépôt ou lorsqu'une demande d'extraction est lancée, exécuter automatiquement une compilation à l'arrivée de nouveaux événements. Vous pouvez également configurer des déclencheurs pour compiler du code suite à toute modification apportée à votre dépôt source ou uniquement des modifications correspondant à certains critères.

Cette page présente chaque type de déclencheur et les fonctionnalités associées avec des déclencheurs.

Déclencheurs d'événements du dépôt

Cloud Build permet d'exécuter automatiquement des compilations sur un dépôt comme les demandes d'extraction ou d'envoi. Vous pouvez connecter des dépôts externes, tels que des dépôts dans GitHub ou Bitbucket, vers Cloud Build ou utilisez dans Cloud Source Repositories pour vos compilations. Bien que vous puissiez connecter n'importe quel dépôt source Cloud Build, Cloud Build fournit un dépôt spécifique déclencheurs d'événements que vous pouvez utiliser pour intégrer des fonctionnalités de gestion de code source spécifiques systèmes de gestion de la sécurité (SCM) de Google. Cette section traite des déclencheurs d'événements de dépôt disponibles.

Déclencheurs GitHub

Vous pouvez créer des déclencheurs GitHub pour exécuter automatiquement les compilations en réponse à les événements de dépôt, comme les demandes d'extraction ou d'extraction. Vous pouvez afficher l'état de la compilation du déclencheur sur GitHub et dans la console Google Cloud. Vous pouvez également utiliser l'application GitHub Cloud Build pour connecter et compiler du code dans GitHub. Pour en savoir plus, consultez Créer des dépôts à partir de GitHub

Déclencheurs GitHub Enterprise

Vous pouvez créer des déclencheurs pour les dépôts hébergés sur une instance GitHub Enterprise, y compris les instances hébergées dans un environnement sur site et inaccessibles via une connexion Internet publique. Les déclencheurs GitHub Enterprise permettent d'exécuter en réponse aux demandes push ou pull envoyées à partir d'une instance GitHub Enterprise. Pour en savoir plus, consultez Créer des dépôts à partir de GitHub Enterprise

Déclencheurs GitLab Enterprise Edition

Vous pouvez créer des déclencheurs pour les dépôts hébergés sur une instance GitLab Enterprise Edition, y compris des instances hébergées dans un réseau privé. Les déclencheurs GitLab Enterprise Edition peuvent être utilisés pour exécuter des compilations en réponse à des transferts de commits ou de demandes d'extraction associés à votre dépôt GitLab Enterprise Edition. Pour en savoir plus, consultez la section Créer des dépôts à partir de GitLab Enterprise Edition.

Déclencheurs Bitbucket Server

Vous pouvez créer des déclencheurs pour les dépôts hébergés sur une instance Bitbucket Server, y compris des instances hébergées dans un environnement sur site. Vous pouvez connecter votre Dépôt Bitbucket Server vers Cloud Build plusieurs fois avec plusieurs connexions hôtes. Pour savoir comment créer des déclencheurs pour exécuter des compilations en réponse à des événements, consultez la section Créer des dépôts à partir de Bitbucket Server.

Déclencheurs du centre de données Bitbucket

Vous pouvez créer des déclencheurs pour les dépôts hébergés sur une instance Bitbucket Data Center, y compris des instances hébergées dans un environnement sur site. Les déclencheurs du centre de données Bitbucket peuvent être utilisés pour exécuter des compilations en réponse à des événements tels que des transferts de commits ou des demandes d'extraction. Pour en savoir plus, consultez la section Créer des dépôts à partir du centre de données Bitbucket.

Déclencheurs Bitbucket Cloud

Vous pouvez créer des déclencheurs pour les dépôts hébergés dans Bitbucket Cloud. Bitbucket Les déclencheurs Cloud permettent d'exécuter des compilations en réponse à des événements tels que de validations de requêtes push ou pull. Pour en savoir plus, consultez la section Créer des dépôts depuis Bitbucket Cloud.

Déclencheurs manuels

Vous pouvez créer des déclencheurs manuels pour exécuter des compilations manuellement et remplacer les valeurs des variables de substitution définies au moment de l'appel avant d'exécuter une compilation. Toi vous pouvez configurer des déclencheurs manuels s'exécuter selon un calendrier. Pour en savoir plus, consultez Compilez manuellement du code dans les dépôts sources.

Déclencheurs Pub/Sub

Vous pouvez créer des déclencheurs Pub/Sub pour exécuter des compilations en réponse à n'importe quel message publié via Pub/Sub. Par exemple, vous pouvez utiliser Déclencheurs Pub/Sub pour la compilation en réponse aux transferts d'images vers Artifact Registry. Dans ce cas, vous pouvez configurer votre déclencheur pour qu'il utilise des filtres n'exécute une compilation que si l'image transférée correspond à un tag spécifique, tel que prod. De plus, les déclencheurs Pub/Sub peuvent être configurés pour s'abonner dans n'importe quel sujet Pub/Sub. Pour en savoir plus, consultez Automatisez les compilations en réponse aux événements Pub/Sub.

Déclencheurs de webhook

Vous pouvez créer des déclencheurs de webhooks pour exécuter des compilations en réponse à des webhooks. Les événements de webhook envoyés à une URL personnalisée vous permettent de connecter directement des et des systèmes externes de gestion de code source (SCM), tels que Bitbucket.com, Bitbucket Server ou GitLab. Quand ? en créant des déclencheurs de webhook, vous pouvez aussi définir votre configuration de compilation de façon intégrée sur votre déclencheur pour contrôler les dépôts que votre déclencheur clone pendant la compilation au lieu de spécifier explicitement une source. Pour en savoir plus, consultez Automatiser les compilations en réponse aux événements de webhook. De plus, pour apprendre à utiliser les déclencheurs de webhook afin de créer des dépôts à partir de pour des SCM spécifiques, consultez la section Créer des dépôts à partir de Bitbucket Server. Créer des dépôts à partir de Bitbucket Cloud Créer des dépôts à partir de GitLab

Fonctionnalités de déclenchement

Les déclencheurs Cloud Build offrent des capacités permettant d'obtenir de contrôler l'exécution d'une compilation. Cette section décrit les différentes fonctionnalités associées aux déclencheurs.

Déclencheurs manuels planifiés

Vous pouvez planifier des déclencheurs manuels pour exécuter automatiquement les compilations selon un calendrier prédéfini. Par exemple, vous pouvez configurer un déclencheur planifié d'exécuter un build tous les samedis à 6h. Pour planifier des compilations, vous pouvez créer un déclencheur manuel et appeler le déclencheur à l'aide de Cloud Scheduler. Pour en savoir plus, consultez la section Planifier des compilations.

Filtrer des événements

Cloud Build utilise Common Expression Language (CEL) avec build, sur les champs répertoriés dans la Ressource Build à laquelle accéder associés à l'événement de compilation, tels que l'ID du déclencheur, la liste d'images ou valeurs de substitution. Vous pouvez utiliser la chaîne filter pour filtrer les événements de compilation dans votre fichier de configuration de compilation à l'aide de n'importe quel champ listé dans Build (Compilation). Pour apprendre Consultez Filtrer les événements de compilation à l'aide du langage CEL.

Variables de substitution

Vous pouvez spécifier des variables de substitution dans votre fichier de configuration de compilation pour remplacer des valeurs spécifiques au moment de la compilation. Par exemple, vous pouvez utiliser des variables de substitution si vous ne connaissez pas la valeur avant la compilation ou si vous souhaitez réutiliser une requête de compilation existante avec différentes variables. Cloud Build fournit des substitutions par défaut que vous pouvez utiliser pour les compilations appelées par des déclencheurs, telles que des mappages de variables vers le nom de votre déclencheur ou le nom de votre dépôt. Vous pouvez également définir vos propres variables de substitution. Pour en savoir plus, consultez la section Remplacer les valeurs des variables.

Extension des paramètres bash

Vous pouvez appliquer des extensions de paramètres bash aux valeurs des variables de substitution. Les extensions de paramètres bash vous permettent de manipuler des chaînes associées à des variables existantes. Par exemple, vous pouvez utiliser des extensions de paramètres bash pour mettre des majuscules ou remplacer une sous-chaîne. Pour en savoir plus, consultez la section Expansions des paramètres bash.

Liaisons de charge utile

Vous pouvez stocker une partie de la charge utile d'un événement de déclencheur en tant que variable de substitution à l'aide de liaisons de charge utile. Les variables associées à une charge utile sont appelées liaisons et sont disponibles pour les compilations appelées par des événements push et pull. Vous pouvez utiliser des liaisons pour accéder à des données supplémentaires liées à votre compilation, telles que l'auteur d'une demande d'extraction. Pour en savoir plus, consultez la section Liaisons de charge utile.

Approbations

Vous pouvez configurer des déclencheurs pour qu'ils n'exécutent pas immédiatement une compilation, mais qu'ils marquent un build est en attente jusqu'à approbation. Si un utilisateur disposant d'autorisations approuve un la compilation commence. Si l'approbation est refusée, la compilation ne démarre pas. Pour savoir comment configurer des déclencheurs nécessitant une approbation, consultez la page Gérer les compilations en fonction de l'approbation.

Notifications d'état de la compilation

Vous pouvez configurer des systèmes d'alerte Cloud Build pour écouter l'événement de compilation sur le sujet Pub/Sub cloud-builds. Les systèmes d'alerte peuvent filtrer également les messages reçus par sujet et envoyer des messages aux services. Cloud Build fournit et gère un système d'alerte déployable dans la section Dépôt cloud-build-notifiers. Vous pouvez configurer des notifications à l'aide d'un système d'alerte Cloud Build, par exemple BigQuery, HTTP, Slack ou SMTP, ou créer votre propre système d'alerte.

Étape suivante