Créer des dépôts depuis GitHub

Les déclencheurs GitHub vous permettent de compiler automatiquement sur des requêtes Git de type push et pull, et d'afficher vos résultats de compilation sur GitHub et Cloud Console. De plus, les déclencheurs GitHub sont compatibles avec toutes les fonctionnalités compatibles avec les déclencheurs GitHub existants et utilisent l'application GitHub Cloud Build pour configurer GitHub et s'authentifier auprès de ce service.

Cette page explique comment créer des déclencheurs GitHub et effectuer une compilation sur GitHub à l'aide de l'application GitHub Cloud Build.

Avant de commencer

  • Activez l'API Cloud Build.

    Activer l'API

  • Préparez votre code source dans un dépôt GitHub.
  • Incluez un fichier Dockerfile ou un fichier de configuration Cloud Build dans votre dépôt source GitHub.
  • Si vous connectez initialement votre dépôt à Cloud Build, assurez-vous de disposer d'autorisations d'administrateur sur votre dépôt. Pour en savoir plus sur les autorisations sur le dépôt GitHub, consultez la section Niveaux d'autorisation des dépôts pour une organisation.
  • Pour utiliser les commandes gcloud sur cette page, installez le SDK Cloud.

Installer l'application Cloud Build

Pour installer l'application Cloud Build et connecter votre dépôt GitHub à votre projet Cloud, procédez comme suit :

  1. Ouvrez la page Déclencheurs dans Google Cloud Console.

    Ouvrir la page Déclencheurs

  2. Dans le sélecteur de projet de la barre supérieure, sélectionnez votre projet Cloud.

  3. Cliquez sur Connecter un dépôt.

  4. Sélectionnez GitHub (application GitHub Cloud Build), cochez la case d'autorisation, puis cliquez sur Continuer.

  5. (Facultatif) Si vous ne vous êtes pas encore connecté à GitHub, faites-le maintenant.

    La page d'autorisation vous invite à autoriser l'application Google Cloud Build à se connecter à Google Cloud.

    Capture d'écran du bouton d'autorisation

    Cliquez sur Autoriser Google Cloud Build par GoogleCloudBuild.

  6. Cliquez sur Installer Google Cloud Build.

  7. Dans la fenêtre pop-up qui s'affiche, sélectionnez votre nom d'utilisateur ou votre organisation GitHub.

  8. Sélectionnez l'une des options suivantes en fonction des besoins de votre entreprise :

    • Tous les dépôts : permet d'activer tous les dépôts GitHub actuels et futurs pour y accéder via l'application Cloud Build.

    • Sélectionner uniquement les dépôts : utilisez la liste déroulante Sélectionner des dépôts pour n'autoriser l'accès qu'à certains dépôts via l'application Cloud Build. Vous pouvez activer d'autres dépôts supplémentaires ultérieurement.

  9. Cliquez sur Installer pour installer l'application Cloud Build.

    Le pop-up se ferme et vous êtes redirigé vers une page de sélection de projet dans Cloud Build. Sur cette page, vous pouvez sélectionner un projet Cloud existant ou en créer un.

    Si vous ne voyez pas de projet existant sur cette page, cliquez sur Sélectionner un projet pour afficher la liste de tous les projets existants.

  10. Une fois que vous avez sélectionné un projet ou que vous en avez créé un, le panneau Connecter un dépôt s'affiche.

  11. Dans la section Sélectionner un dépôt, sélectionnez les champs suivants:

    • Compte GitHub: compte GitHub utilisé pour installer l'application GitHub Cloud Build. Ce champ peut être présélectionné pour vous.

    • Repository: dépôts que vous souhaitez connecter à Cloud Build.

      Si vous ne voyez pas un ou plusieurs de vos dépôts cibles, cliquez sur Modifier les dépôts sur GitHub et répétez les étapes ci-dessus pour activer d'autres dépôts dans l'application GitHub Cloud Build.

  12. Après avoir sélectionné votre compte GitHub et vos dépôts, lisez la clause de non-responsabilité et cochez la case indiquant que vous acceptez les conditions présentées.

  13. Cliquez sur Se connecter.

  14. (Facultatif) Dans la section Créer un déclencheur, sélectionnez les dépôts pour lesquels vous souhaitez créer un déclencheur dans le champ Créer un exemple de déclencheur pour ces dépôts. (Installation de Python groupée). Une fois que vous avez sélectionné vos dépôts, cliquez sur Create a trigger (Créer un déclencheur).

  15. Cliquez sur OK.

Vous avez maintenant connecté un ou plusieurs dépôts GitHub à votre projet Cloud. Vous êtes redirigé vers la page Déclencheurs de Cloud Console.

(Facultatif) Mettre à jour le compte GitHub authentifié

Si vous devez mettre à jour le compte GitHub associé à votre compte Google, vous pouvez accéder à la page S'authentifier avec GitHub. Vous devrez peut-être procéder ainsi si vous constatez que la page du dépôt Cloud Build Connect indique que l'application GitHub n'est installée sur aucun dépôt après l'installation de l'application Cloud Build sur GitHub.

Créer des déclencheurs GitHub

Pour créer des déclencheurs GitHub, procédez comme suit:

  1. Ouvrez la page Déclencheurs dans Google Cloud Console.

    Ouvrir la page Déclencheurs

  2. Sélectionnez votre projet dans le menu déroulant du sélecteur de projet, en haut de la page.

  3. Cliquez sur Ouvrir.

  4. Cliquez sur Créer un déclencheur.

  5. Entrez les paramètres de déclencheur suivants :

    • Nom : saisissez le nom de votre déclencheur.

    • Description (facultative) : saisissez une description du déclencheur.

    • Événement : sélectionnez l'événement lié au dépôt qui appelle votre déclencheur.

      • Déployer sur une branche : configurez votre déclencheur pour lancer une compilation sur les commits réalisés dans une branche spécifique.

      • Transférer le nouveau tag : configurez votre déclencheur pour lancer une compilation sur des commits contenant un tag particulier.

      • Demande d'extraction (application GitHub seulement) : configurez votre déclencheur pour lancer une compilation sur les commits d'une demande d'extraction.

    • Source : sélectionnez le dépôt et la branche ou le tag correspondants pour surveiller les événements.

      • Dépôt : sélectionnez le dépôt de votre choix dans la liste des dépôts disponibles. Pour connecter un nouveau dépôt, consultez la section Connecter des dépôts supplémentaires.

      • Branche ou tag : spécifiez une expression régulière à laquelle faire correspondre la valeur de la branche ou du tag. Pour en savoir plus sur la syntaxe des expressions régulières acceptables, consultez la page Syntaxe RE2.

      • Contrôle des commentaires : si vous avez sélectionné Demande d'extraction (application GitHub uniquement) comme événement, choisissez l'une des options suivantes pour contrôler si une compilation doit être exécutée automatiquement par le déclencheur :

        • Obligatoire, sauf pour les propriétaires et les collaborateurs : lorsqu'une demande d'extraction est créée ou mise à jour par un propriétaire ou un collaborateur du dépôt, les compilations sont automatiquement exécutées par le déclencheur. Si un contributeur externe lance l'action, les compilations ne seront exécutées qu'après que le propriétaire ou le collaborateur a ajouté /gcbrun à la demande d'extraction.

        • Obligatoire : lorsqu'une demande d'extraction est créée ou mise à jour par un contributeur, les compilations ne sont exécutées qu'après que le propriétaire ou le collaborateur a ajouté /gcbrun à la demande d'extraction.

        • Non requis : lorsqu'une demande d'extraction est créée ou mise à jour par un contributeur, les compilations sont automatiquement exécutées par des déclencheurs.

    • Fichiers inclus (facultatif) : les modifications affectant au moins l'un de ces fichiers déclencheront une compilation.

    • Fichiers ignorés (facultatif) : les modifications affectant uniquement des fichiers ignorés ne déclencheront pas de compilation.

    • Configuration: sélectionnez le fichier de configuration de compilation situé dans votre dépôt distant ou créez un fichier de configuration de compilation intégré à utiliser pour votre compilation.

      • Type: sélectionnez le type de configuration à utiliser pour votre compilation.
        • Fichier de configuration Cloud Build (yaml ou json) : utilisez un fichier de configuration de compilation pour votre configuration.
        • Dockerfile: utilisez un fichier Dockerfile pour votre configuration.
      • Emplacement: indiquez l'emplacement de votre configuration.

        • Dépôt Si votre fichier de configuration se trouve dans votre dépôt distant, indiquez l'emplacement de votreFichier de configuration de compilation ouDockerfile Répertoire et le nom de l'image obtenue. Si votre configuration est un Dockerfile, vous pouvez éventuellement fournir un délai avant expiration pour votre compilation. Une fois que vous avez fourni Dockerfile et le nom de l'image, vous obtenez un aperçu de la commande docker build que votre compilation va exécuter.
        • Intégré: si vous avez sélectionné le fichier de configuration Cloud Build (yaml ou json) comme option de configuration, vous pouvez spécifier votre configuration de compilation de manière intégrée. Cliquez sur Ouvrir l'éditeur pour écrire votre fichier de configuration de compilation dans Google Cloud Console à l'aide de la syntaxe YAML ou JSON. Cliquez sur Terminé pour enregistrer votre configuration de compilation.

  6. Cliquez sur Créer pour enregistrer le déclencheur de compilation.

Pour créer des déclencheurs GitHub à l'aide des commandes gcloud, consultez la section gcloud pour créer un déclencheur de compilation.

Créer et afficher vos modifications

Pour compiler à l'aide de déclencheurs GitHub, vous devez déployer et valider les modifications sur votre dépôt source connecté ou configurer votre build sur des demandes d'extraction. Une fois vos modifications vérifiées, Cloud Build compile votre code.

Pour afficher les modifications apportées à la compilation sur GitHub, accédez à l'onglet Vérifications de votre dépôt.

Capture d'écran de l'onglet de conversation

Vous verrez que Cloud Build a intégré vos modifications. D'autres informations sur la compilation sont également disponibles, telles que le temps nécessaire à la compilation du code et l'ID de la compilation.

Pour afficher les modifications apportées à la compilation dans Cloud Build, cliquez sur Afficher plus d'informations sur Google Cloud Build. La page Informations sur la compilation dans Cloud Console s'ouvre, où vous pouvez consulter des informations de compilation telles que l'état, les journaux et les étapes de compilation.

Différents types de déclencheurs basés sur GitHub

Si votre code source se trouve dans GitHub, Cloud Build propose deux méthodes pour exécuter automatiquement les compilations. Vous trouverez dans cette section la description des deux déclencheurs basés sur GitHub ainsi qu'un comparatif de leurs fonctionnalités.

  • Anciens déclencheurs GitHub: lorsque vous créez un ancien déclencheur GitHub, Cloud Build met en miroir votre dépôt GitHub dans Cloud Source Repositories et utilise le dépôt en miroir pour toutes ses opérations. Vous pouvez créer et gérer des déclencheurs GitHub à l'aide de Cloud Console.

  • Déclencheurs GitHub: ce type de déclencheur utilise l'application GitHub Cloud Build pour configurer GitHub et s'authentifier auprès de ce service. Les déclencheurs GitHub vous permettent de démarrer automatiquement les compilations sur les requêtes Git de type push et pull, et d'afficher les résultats des compilations sur GitHub et Cloud Console. Vous pouvez créer et gérer des déclencheurs GitHub à l'aide de Cloud Console ou de l'API Cloud Build.

  • Déclencheurs GitHub Enterprise: ce type de déclencheur vous permet d'appeler des builds en réponse à des commits ou à des demandes d'extraction sur une instance GitHub Enterprise. Vous pouvez créer et gérer des déclencheurs GitHub Enterprise à l'aide de Cloud Console ou de l'API Cloud Build.

Le tableau suivant compare les anciens déclencheurs GitHub, GitHub et Enterprise:

Caractéristique Anciens déclencheurs GitHub Déclencheurs GitHub Déclencheurs GitHub Enterprise
Exécuter des compilations à partir du code source Oui Oui Oui
Exécuter des compilations sur des demandes d'extraction Non Oui Oui
Création d'un déclencheur à l'aide de Cloud Console Oui Oui Oui
Création d'un déclencheur à l'aide de l'API Cloud Build Non Oui Oui
Création d'un déclencheur à l'aide de l'application Cloud Build GitHub Non Oui Oui
Affichage de l'état de la compilation sur Cloud Console Oui Oui Oui
Affichage de l'état de la compilation sur GitHub Non Oui Oui

Partage des données

Les déclencheurs GitHub envoient des données à l'application GitHub Cloud Build. Les données envoyées à l'application vous aident à identifier les déclencheurs par nom et à consulter les résultats de la compilation sur GitHub.

Les données suivantes sont actuellement partagées entre Google Cloud et l'application GitHub:

  • Nom du déclencheur

Si vous avez créé des déclencheurs avant le mois d'août 2020, le partage des données peut ne pas être activé pour votre projet. Vous pouvez activer le partage de données pour tous les déclencheurs GitHub de votre projet en cliquant sur Activer dans l'onglet de partage de données Cloud Build.

Si les vérifications d'état requises sont activées pour un dépôt GitHub, l'activation du partage des données peut interrompre temporairement les vérifications d'état. Vous pouvez ajuster les configurations de la vérification d'état pour rechercher le nom de votre déclencheur en procédant comme suit:

  • Désactiver les vérifications requises spécifiques à Cloud Build dans le dépôt GitHub
  • S'assurer que le partage des données est activé dans Cloud Build
  • Exécuter une nouvelle compilation dans Cloud Build qui publie des états dans votre dépôt
  • Réactivation des vérifications d'état requises en sélectionnant le nom du déclencheur

Étape suivante