Vous pouvez utiliser Cloud Build pour automatiser la compilation et le déploiement de code dans Knative serving à 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.
Lorsque vous créez des conteneurs à l'aide d'un déclencheur Cloud Build, les informations du dépôt source s'affichent dans la console Google Cloud pour votre service après le déploiement sur Knative serving.
Avant de commencer
- Vous avez 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 : Go, Node.js, Python, Java ou .NET Core. -
Enable the Cloud Build and Cloud Source Repositories APIs.
Configurer un déploiement continu à partir de l'interface utilisateur de Knative serving
La procédure 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
Accédez à Knative serving dans la console Google Cloud :
Cliquez sur Créer un service.
Renseignez les paramètres du service avec les valeurs de votre choix.
Cliquez sur Suivant.
Sélectionnez Continuously deploy new revisions from a source repository (Déployer de nouvelles révisions en continu à partir d'un dépôt source).
Cliquez sur Set up with Cloud Build (Effectuer la configuration avec Cloud Build).
Sélectionnez le fournisseur et le dépôt.
- GitHub : si vous n'êtes pas encore authentifié, cliquez sur S'authentifier et suivez les instructions. Par défaut, la connexion d'un dépôt est effectuée via l'application GitHub Cloud Build. Vous pouvez également mettre en miroir votre dépôt GitHub dans Cloud Source Repositories. Pour ce faire, cliquez sur Options avancées et cochez Mettre en miroir le dépôt GitHub à l'aide de Cloud Source Repositories. En savoir plus.
- Bitbucket : si vous n'êtes pas encore authentifié, cliquez sur S'authentifier et suivez les instructions.
- Cloud Source Repositories
Cliquez sur Suivant.
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.
Cliquez sur Enregistrer.
Vérifiez les paramètres sélectionnés.
Cliquez sur Créer.
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.
Une fois toutes les étapes terminées, veuillez noter les options supplémentaires suivantes :
- Bouton "Modifier le déploiement continu"
- Historique de compilation
- Détails de la source figurant dans la section Détails de la révision
Service existant
Accédez à Knative serving dans la console Google Cloud :
Localisez le service dans la liste des services, puis cliquez dessus.
Cliquez sur Configurer le déploiement continu.
Sélectionnez le fournisseur et le dépôt.
- GitHub : si vous n'êtes pas encore authentifié, cliquez sur S'authentifier et suivez les instructions. Par défaut, la connexion d'un dépôt est effectuée via l'application GitHub Cloud Build. Vous pouvez également mettre en miroir votre dépôt GitHub dans Cloud Source Repositories. Pour ce faire, cliquez sur Options avancées et cochez Mettre en miroir le dépôt GitHub à l'aide de Cloud Source Repositories. En savoir plus.
- Bitbucket : si vous n'êtes pas encore authentifié, cliquez sur S'authentifier et suivez les instructions.
- Cloud Source Repositories
Cliquez sur Suivant.
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.
Cliquez sur Enregistrer.
La page est actualisée et affiche la progression de la configuration du déploiement continu.
Une fois toutes les étapes terminées, veuillez noter les options supplémentaires suivantes :
- Bouton "Modifier le déploiement continu"
- Historique de compilation
- Détails de la source figurant dans la section Détails de la révision
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 Knative serving
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, vous devez ajouter un libellé ayant comme clé gcb-trigger-id et comme valeur l'identifiant unique (et non le nom) du déclencheur Cloud Build. Consultez les instructions de configuration d'un libellé.