Déployer une application avec la Gemini CLI et des compétences en CI/CD

1. Introduction

Dans cet atelier de programmation, vous allez découvrir le workflow "de zéro à héros" pour l'ingénierie de plate-forme à l'aide de la Gemini CLI et de l'extension CI/CD. Vous allez endosser le rôle d'un développeur d'entreprise qui a créé une application (comme la démo Spring Petclinic ou une application Python Flask) et qui souhaite maintenant la déployer sur Google Cloud pour la partager.

Au lieu de configurer manuellement des pipelines complexes, vous utiliserez le langage naturel pour guider Gemini. L'agent analysera votre projet, suggérera des runtimes cibles à petite échelle comme Google Cloud Run, effectuera des analyses de sécurité pour détecter les secrets divulgués et gérera le déploiement, en vous fournissant une URL fonctionnelle.

Objectifs de l'atelier

  • Cloner un dépôt (vous pouvez utiliser le vôtre ou une application de démonstration comme Spring Petclinic)
  • Installez et configurez Gemini CLI et l'extension CI/CD.
  • Utilisez une requête telle que deploy my application pour déclencher la compétence de déploiement.
  • Découvrez comment Gemini analyse le projet, suggère Cloud Run, effectue des vérifications de sécurité et déploie l'application.
  • Vérifiez que l'application est en cours d'exécution.

Prérequis

  • Un navigateur Web tel que Chrome.
  • Un projet Google Cloud avec facturation activée.

Cet atelier de programmation s'adresse aux développeurs de tous niveaux, y compris aux débutants.

2. Avant de commencer

Configuration de la facturation

Créer ou sélectionner un projet Google Cloud

Créer un projet Google Cloud

  1. Dans la console Google Cloud, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
  2. Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier si la facturation est activée sur un projet.

Démarrer Cloud Shell

Cloud Shell est un environnement de ligne de commande exécuté dans Google Cloud et fourni avec les outils nécessaires.

  1. Cliquez sur Activer Cloud Shell en haut de la console Google Cloud.
  2. Une fois connecté à Cloud Shell, vérifiez votre authentification :
    gcloud auth list
    
  3. Vérifiez que votre projet est configuré :
    gcloud config get project
    
  4. Si votre projet n'est pas défini comme prévu, définissez-le :
    export PROJECT_ID=<YOUR_PROJECT_ID>
    gcloud config set project $PROJECT_ID
    

Activer les API

Exécutez cette commande dans Cloud Shell pour activer toutes les API requises pour cet atelier :

gcloud services enable \
  cloudbuild.googleapis.com \
  run.googleapis.com \
  artifactregistry.googleapis.com

3. Configurer Gemini CLI

Dans cette étape, vous allez installer et configurer Gemini CLI et l'extension CI/CD.

  1. Assurez-vous que Gemini CLI est installé. Si vous ne l'avez pas encore installé, suivez les instructions du guide de démarrage de Gemini CLI.
  2. Se connecter : nous vous recommandons de vous connecter avec votre compte Google. Pour en savoir plus, consultez le Guide d'authentification.
  3. Installez l'extension CI/CD : exécutez la commande suivante pour installer l'extension depuis GitHub :
    gemini extensions install https://github.com/gemini-cli-extensions/cicd
    
    Vous pouvez valider l'installation de l'extension en listant les extensions installées :
    gemini extensions list
    
  4. Configurez les identifiants par défaut de l'application (ADC) : l'extension CI/CD nécessite la configuration des ADC. Exécutez la commande suivante :
    gcloud auth login
    gcloud auth application-default login
    
  5. Définissez le projet et la région par défaut : il est utile d'avoir configuré gcloud avec un projet et un projet de quota par défaut pour ADC. Remplacez par vos valeurs réelles (par exemple, my-project) :
    gcloud config set project <PROJECT_ID>
    gcloud auth application-default set-quota-project <PROJECT_ID>
    

4. Déployer l'application

Vous êtes maintenant prêt à utiliser la CLI Gemini et l'extension CI/CD pour déployer l'application.

Cloner le dépôt

Dans cet atelier, nous allons utiliser l'exemple d'application Spring Petclinic. Vous pouvez également utiliser votre propre application si vous en avez une qui utilise un environnement d'exécution compatible (comme Python/Flask, Java/Spring Boot, etc.).

  1. Clonez le dépôt et accédez au répertoire :
    git clone https://github.com/spring-projects/spring-petclinic.git
    cd spring-petclinic
    

Demander à Gemini de déployer

  1. Lancez la CLI Gemini depuis le répertoire du projet :
    gemini
    
  2. Une fois dans le shell Gemini CLI, utilisez l'extension CI/CD pour déployer votre application. Vous pouvez utiliser un simple prompt en langage naturel :
    deploy my application
    

Et ensuite ?

Gemini activera la skill google-cicd-deploy et effectuera plusieurs actions :

  • Analyser le projet : identifie le type d'application (par exemple, Spring Boot).
  • Suggérer un environnement d'exécution : un environnement d'exécution approprié, tel que Google Cloud Run, sera suggéré.
  • Analyse de sécurité : elle recherche les secrets divulgués à l'aide des outils MCP. Si vous y êtes invité, autorisez l'exécution des outils.
  • Extraire la configuration : gcloud sera utilisé pour lire l'environnement de votre projet actuel.
  • Proposer des paramètres : des valeurs par défaut raisonnables pour les paramètres de déploiement sont proposées. Vous devez les confirmer.

Vérifiez la configuration proposée et confirmez le déploiement.

Une fois l'opération terminée, Gemini vous fournira l'URL de votre application en cours d'exécution.

5. Effectuer un nettoyage

Pour éviter que les ressources créées lors de cet atelier de programmation ne soient facturées en permanence sur votre compte Google Cloud, supprimez-les.

Si vous avez déployé le service sur Cloud Run, vous pouvez le supprimer à l'aide de la commande suivante (remplacez par votre région de calcul, par exemple us-central1) :

gcloud run services delete spring-petclinic --region <REGION>

Si vous avez créé un projet dédié pour cet atelier de programmation, vous pouvez également le supprimer entièrement :

gcloud projects delete <YOUR_PROJECT_ID>

6. Félicitations

Félicitations ! Vous avez utilisé Gemini CLI et l'extension CI/CD pour déployer une application sur Google Cloud Run à l'aide de requêtes en langage naturel.

Connaissances acquises

  • Comment installer et configurer la CLI Gemini et l'extension CI/CD.
  • Découvrez comment utiliser le langage naturel pour déclencher un flux de déploiement.
  • Découvrez comment Gemini analyse votre projet, gère les analyses de sécurité et suggère des environnements d'exécution.

Étapes suivantes

  • Explorez des requêtes plus avancées avec l'extension CI/CD, comme la conception de pipelines complets ou la génération de Terraform.
  • Consultez l'extension CI/CD.
  • Découvrez Developer Connect.

Documents de référence