Déploiement continu à partir de Git à l'aide de Cloud Build

Vous pouvez utiliser Cloud Build pour automatiser la compilation et le déploiement de code dans Cloud Run à l'aide d'un déclencheur Cloud Build, qui compile et déploie automatiquement votre code chaque fois que de nouveaux commits sont envoyés vers une branche donnée d'un dépôt Git. Pour obtenir un exemple, consultez le guide de démarrage rapide pour créer un dépôt de modèles et le déployer en continu à partir de git.

Lorsque vous créez des conteneurs à l'aide d'un déclencheur Cloud Build, les informations du dépôt source s'affichent dans Google Cloud Console pour votre service après le déploiement sur Cloud Run.

Remarque : Vous pouvez également utiliser Cloud Deploy pour configurer un pipeline de livraison continue afin de déployer des services Cloud Run dans plusieurs environnements.

Avant de commencer

  • Vous disposez d'un dépôt Git avec un Dockerfile ou votre codebase est écrit dans l'un des langages acceptés par les packs de création Google Cloud.
  • Enable the Cloud Build API.

    Enable the API

Rôles requis

Pour obtenir les autorisations nécessaires pour déployer des services Cloud Run à partir de Git à l'aide de Cloud Build, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet:

Le compte de service qui exécute la compilation doit disposer des rôles suivants :

Pour obtenir la liste des rôles et des autorisations IAM associés à Cloud Run, consultez les sections Rôles IAM Cloud Run et Autorisations IAM Cloud Run. Si votre service Cloud Run communique avec les API Google Cloud, telles que les bibliothèques clientes Cloud, consultez le guide de configuration de l'identité du service. Pour en savoir plus sur l'attribution de rôles, consultez les sections Autorisations de déploiement et Gérer les accès.

Configurer un déploiement continu à partir de l'interface utilisateur de Cloud Run

La procédure de configuration varie légèrement selon que vous configurez le déploiement continu pour un nouveau service ou pour un service existant. Cliquez sur l'onglet approprié pour en savoir plus.

Nouveau service

  1. Créez un service comme décrit dans la section Déployer un nouveau service, en veillant à sélectionner Déployer de nouvelles révisions en continu à partir d'un dépôt source dans la page Paramètres des services.

  2. Dans la page Paramètres des services, cliquez sur Configurer avec Cloud Build.

  3. GitHub est le fournisseur de dépôts par défaut. Si vous n'êtes pas encore authentifié, cliquez sur S'authentifier et suivez les instructions. La connexion d'un dépôt s'effectue à l'aide de l'application GitHub Cloud Build.

    Configurer le déploiement continu, étape 1

  4. Cliquez sur Suivant.

  5. Renseignez les options pour l'étape de "Build Configuration" (Configuration de la compilation) :

    • Branch (Branche) : indique la source à utiliser lors de l'exécution du déclencheur. Vous pouvez insérer ici une expression régulière. Les branches correspondantes sont automatiquement validées et elles apparaissent alors sous l'entrée. Notez que si une seule branche correspond, le déclencheur sera automatiquement exécuté après sa création.
    • Type de build

      • Si votre dépôt doit être créé à l'aide de Docker et qu'il contient un fichier Dockerfile, sélectionnez Dockerfile. Emplacement source indique l'emplacement et le nom du fichier Dockerfile. Le répertoire sera utilisé comme contexte pour le build Docker. Tous les chemins d'accès doivent être relatifs au répertoire actuel.

      • Sinon, sélectionnez packs de création Google Cloud. Utilisez le contexte du pack de création pour spécifier le répertoire et le point d'entrée (facultatif) pour fournir la commande permettant de démarrer le serveur. Exemple : gunicorn -p :8080 main:app pour Python, java -jar target/myjar.jar pour Java. Laissez le champ vide pour appliquer le comportement par défaut.

    Configurer le déploiement continu, étape 2

  6. Cliquez sur Enregistrer.

  7. Vérifiez les paramètres sélectionnés.

    Valider la configuration du déploiement continu

  8. Cliquez sur Créer.

  9. Notez que vous êtes redirigé vers la page Détails du service, où vous pouvez suivre la progression de la configuration de votre déploiement continu.

  10. Une fois toutes les étapes terminées, veuillez noter les options supplémentaires suivantes :

Service existant

  1. Accédez à Cloud Run

  2. Localisez le service dans la liste des services, puis cliquez dessus.

  3. Cliquez sur Configurer le déploiement continu.

  4. GitHub est le fournisseur de dépôts par défaut. Si vous n'êtes pas encore authentifié, cliquez sur S'authentifier et suivez les instructions. La connexion d'un dépôt s'effectue à l'aide de l'application GitHub Cloud Build.

    Configurer le déploiement continu, étape 1

  5. Cliquez sur Suivant.

  6. Renseignez les options pour l'étape de "Build Configuration" (Configuration de la compilation) :

    • Branch (Branche) : indique la source à utiliser lors de l'exécution du déclencheur. Vous pouvez insérer ici une expression régulière. Les branches correspondantes sont automatiquement validées et elles apparaissent alors sous l'entrée. Notez que si une seule branche correspond, le déclencheur sera automatiquement exécuté après sa création.
    • Type de build

      • Si votre dépôt doit être créé à l'aide de Docker et qu'il contient un fichier Dockerfile, sélectionnez Dockerfile. Emplacement source indique l'emplacement et le nom du fichier Dockerfile. Le répertoire sera utilisé comme contexte pour le build Docker. Tous les chemins d'accès doivent être relatifs au répertoire actuel.

      • Sinon, sélectionnez packs de création Google Cloud. Utilisez le contexte du pack de création pour spécifier le répertoire et le point d'entrée (facultatif) pour fournir la commande permettant de démarrer le serveur. Exemple : gunicorn -p :8080 main:app pour Python, java -jar target/myjar.jar pour Java. Laissez le champ vide pour appliquer le comportement par défaut.

    Configurer le déploiement continu, étape 2

  7. Cliquez sur Enregistrer.

  8. La page est actualisée et affiche la progression de la configuration du déploiement continu.

  9. Une fois toutes les étapes terminées, veuillez noter les options supplémentaires suivantes :

Configurer manuellement le déploiement continu

Reportez-vous à la section Configurer manuellement le déploiement continu si vous devez passer par une procédure manuelle au lieu de l'interface utilisateur.

Associer le déclencheur Cloud Build existant au service Cloud Run

Si vous disposez déjà d'un déclencheur Cloud Build, vous pouvez l'associer au service et exploiter les fonctionnalités de la console Google Cloud depuis la page "Détails du service" : bouton Modifier le déploiement continu et graphique Historique de compilation.

Pour ce faire, ajoutez un libellé ayant comme clé gcb-trigger-id et comme valeur l'identifiant unique (et non le nom) du déclencheur Cloud Build. Consultez la section Définir ou modifier des libellés pour configurer le libellé.