Gérer les API et les bibliothèques Cloud dans Cloud Code for IntelliJ

Vous pouvez accéder aux produits et services Google Cloud à partir de votre code à l'aide des API Cloud. Ces API Cloud présentent une interface REST JSON simple que vous pouvez appeler via des bibliothèques clientes.

Ce document explique comment activer les API Cloud et ajouter des bibliothèques clientes Cloud à votre projet.

Parcourir les API Cloud

Pour explorer toutes les API Google Cloud disponibles dans votre IDE, procédez comme suit:

  1. Dans le menu Outils, sélectionnez Cloud Code > API Cloud.
  2. Développez l'arborescence de l'explorateur des API Google Cloud pour afficher toutes les API disponibles. L'explorateur regroupe les API Cloud par catégorie. Vous pouvez également rechercher une API spécifique à l'aide de la barre de recherche des API de recherche.
  3. Capture d'écran montrant la liste des API Cloud affichées dans l'arborescence.
  4. Cliquez sur une API pour afficher plus de détails, tels que son état, les instructions d'installation par langage des bibliothèques clientes correspondantes et la documentation correspondante.

Activer les API Cloud

Pour activer rapidement les API Cloud pour un projet à l'aide des détails de l'API, procédez comme suit :

  1. Dans la vue Détails de l'API Cloud, choisissez un projet Google Cloud pour lequel vous souhaitez activer l'API Cloud.
  2. Cliquez sur Enable API (Activer l'API).

    Une fois l'API activée, un message confirmant cette modification s'affiche.

Ajouter des bibliothèques clientes Google Cloud

Pour ajouter des bibliothèques à votre projet dans IntelliJ, procédez comme suit :

Pour les projets Java Maven

  1. Dans le menu Outils, sélectionnez Cloud Code > API Cloud.
  2. La boîte de dialogue Add Google Cloud Libraries (Ajouter des bibliothèques Google Cloud) affiche les bibliothèques prises en charge.

    Capture d'écran illustrant la boîte de dialogue Manage Google Cloud APIs (Gérer les API Google Cloud). Cette boîte de dialogue vous permet de sélectionner un module auquel ajouter les bibliothèques, affiche la liste des API disponibles pouvant être ajoutées et fournit un espace de travail contenant des informations sur chaque API.
  3. Sélectionnez le type de bibliothèque de votre choix parmi la bibliothèque cliente Google Cloud (recommandée pour la plupart des projets) ou Java Spring GCP (recommandé si votre projet utilise Java Spring).
  4. Dans le menu déroulant Module, sélectionnez le module auquel vous souhaitez ajouter la bibliothèque.
  5. Cliquez sur Ajouter une dépendance Maven pour ajouter un BOM et une bibliothèque cliente à votre projet.

Pour tous les autres projets

  1. Dans le menu Outils, sélectionnez Cloud Code > API Cloud.
  2. La boîte de dialogue Add Google Cloud Libraries (Ajouter des bibliothèques Google Cloud) affiche les bibliothèques prises en charge.

    Capture d'écran illustrant la boîte de dialogue Manage Google Cloud APIs (Gérer les API Google Cloud).
                      Cette boîte de dialogue affiche la liste des API disponibles pouvant être ajoutées et fournit un espace de travail qui affiche des informations sur les API sélectionnées.
  3. Installez l'API en suivant les instructions d'installation indiquées sur la page des détails de l'API correspondant à la langue de votre choix.

Utiliser des exemples d'API

Pour rechercher et utiliser des exemples de code pour chaque API dans l'explorateur d'API, procédez comme suit:

  1. Dans le menu Tools (Outils), sélectionnez Cloud Code > APIs Cloud (API Cloud).

  2. Pour ouvrir la vue détaillée, cliquez sur le nom d'une API.

  3. Pour afficher des exemples de code pour l'API, cliquez sur l'onglet Exemples de code.

  4. Pour filtrer la liste d'échantillons, saisissez du texte pour rechercher ou sélectionner un langage de programmation dans le menu déroulant Langue.

Configurer l'authentification

Une fois que vous avez activé les API et ajouté les bibliothèques clientes nécessaires, vous devez configurer votre application pour qu'elle puisse s'authentifier. La configuration à effectuer dépend du type de développement et de la plate-forme sur laquelle vous exécutez l'application.

Une fois les étapes d'authentification effectuées, votre application peut s'authentifier et est prête à être déployée.

Développement local

Ordinateur local

Cloud Code garantit que vos identifiants par défaut de l'application (ADC) sont définis si vous vous êtes connecté à Google Cloud via votre IDE. Si vous ne vous connectez pas avec Cloud Code, exécutez gcloud auth application-default login manuellement.

Minikube

  1. Cloud Code garantit que vos identifiants par défaut de l'application (ADC) sont définis si vous vous êtes connecté à Google Cloud via votre IDE. Si vous ne vous connectez pas avec Cloud Code, exécutez gcloud auth application-default login manuellement.
  2. Démarrez Minikube à l'aide de la commande minikube start --addons gcp-auth. Cette opération installe dans vos pods les identifiants par défaut de votre application. Pour un guide d'authentification détaillé de Minikube pour Google Cloud, reportez-vous à la documentation gcp-auth de Minikube.

Autres clusters K8s locaux

  1. Cloud Code garantit que vos identifiants par défaut de l'application (ADC) sont définis si vous vous êtes connecté à Google Cloud via votre IDE. Si vous ne vous connectez pas avec Cloud Code, exécutez gcloud auth application-default login manuellement.
  2. Installez le répertoire local gcloud dans vos pods Kubernetes en modifiant la spécification de pod dans le fichier manifeste de pod ou de déploiement afin que les bibliothèques clientes Google Cloud puissent trouver les identifiants. Exemple de configuration de pod Kubernetes :
    apiVersion: v1
    kind: Pod
    metadata:
      name: my-app
      labels:
        name: my-app
    spec:
      containers:
      - name: my-app
        image: gcr.io/google-containers/busybox
        ports:
          - containerPort: 8080
        volumeMounts:
          - mountPath: /root/.config/gcloud
            name: gcloud-volume
      volumes:
        - name: gcloud-volume
          hostPath:
            path: /path/to/home/.config/gcloud

Cloud Run

Cloud Code garantit que vos identifiants par défaut de l'application (ADC) sont définis si vous vous êtes connecté à Google Cloud via votre IDE. Si vous ne vous connectez pas avec Cloud Code, exécutez gcloud auth application-default login manuellement.

Développement à distance

Google Kubernetes Engine

Selon le champ d'application de votre projet, vous pouvez choisir comment authentifier les services Google Cloud sur GKE:

  • (Développement uniquement)
    1. Créez un cluster GKE avec les paramètres suivants :
      • Vérifiez que vous utilisez le compte de service utilisé par GKE et le compte de service Compute Engine par défaut, et que le champ Niveaux d'accès est défini sur Autoriser l'accès complet à toutes les API Cloud (les deux paramètres sont accessibles dans la section Pools de nœuds > Sécurité).
        Le compte de service Compute Engine étant partagé par toutes les charges de travail déployées sur votre nœud, cette méthode surprovisionne les autorisations et doit être utilisée uniquement pour le développement.
      • Assurez-vous que Workload Identity n'est pas activé sur votre cluster (dans la section Cluster > Sécurité).
    2. Attribuez les rôles nécessaires au compte de service Compute Engine par défaut :
  • (Recommandé pour la production)
    1. Configurez votre cluster et votre application GKE avec Workload Identity afin d'authentifier les services Google Cloud sur GKE. Cette opération associe votre compte de service Kubernetes à votre compte de service Google.
    2. Dans le fichier YAML de votre déploiement Kubernetes, définissez le champ .spec.serviceAccountName afin que votre déploiement référence le compte de service Kubernetes.
      Si vous travaillez sur une application créée à partir d'un modèle Cloud Code, ce fichier se trouve dans le dossier "kubernetes-manifests".
    3. Si le service Google Cloud auquel vous essayez d'accéder nécessite des rôles supplémentaires, accordez-lui les rôles de compte de service Google que vous utilisez pour développer votre application :

Cloud Run

  1. Pour créer un compte de service unique pour le déploiement de votre application Cloud Run, sélectionnez le projet dans lequel votre secret est stocké sur la page "Comptes de service".

    Accéder à la page Comptes de service

  2. Cliquez sur Créer un compte de service.
  3. Dans la boîte de dialogue Créer un compte de service, indiquez un nom descriptif pour le compte de service.
  4. Remplacez l'ID de compte de service par une valeur unique et reconnaissable, puis cliquez sur Créer.
  5. Si le service Google Cloud auquel vous essayez d'accéder nécessite des rôles supplémentaires, cliquez sur Continuer, puis sur OK.
  6. Pour ajouter votre compte de service Kubernetes à votre configuration de déploiement, accédez à votre configuration d'exécution Cloud Run: Deploy, développez la section Advanced révisions settings (Paramètres de révision avancés), puis spécifiez votre compte de service dans le champ Service Account (Compte de service).
    Section "Advanced revision settings" (Paramètres de révision avancés) développée dans le panneau "Cloud Run: Deploy" (Cloud Run : Déployer). Le champ "Service Account" (Compte de service) est renseigné avec le nom du compte de service au format service-account-name@project-name.iam.gserviceaccount.com

Cloud Run

Selon le champ d'application de votre projet, vous pouvez choisir comment authentifier les services Google Cloud sur GKE:

  • (Développement uniquement)
    1. Créez un cluster GKE avec les paramètres suivants :
      • Vérifiez que vous utilisez le compte de service utilisé par GKE et le compte de service Compute Engine par défaut, et que le champ Niveaux d'accès est défini sur Autoriser l'accès complet à toutes les API Cloud (les deux paramètres sont accessibles dans la section Pools de nœuds > Sécurité).
        Le compte de service Compute Engine étant partagé par toutes les charges de travail déployées sur votre nœud, cette méthode surprovisionne les autorisations et doit être utilisée uniquement pour le développement.
      • Assurez-vous que Workload Identity n'est pas activé sur votre cluster (dans la section Cluster > Sécurité).
    2. Attribuez les rôles nécessaires au compte de service Compute Engine par défaut :
  • (Recommandé pour la production)
    1. Configurez votre cluster et votre application GKE avec Workload Identity afin d'authentifier les services Google Cloud sur GKE. Cette opération associe votre compte de service Kubernetes à votre compte de service Google.
    2. Pour ajouter votre compte de service Kubernetes à votre configuration de déploiement, accédez à la configuration de votre exécution Cloud Run:Deploy, développez la section Paramètres de révision avancés, puis spécifiez votre compte de service Kubernetes dans le champ Compte de service.
      Section "Advanced revision settings" (Paramètres de révision avancés) du panneau "Cloud Run: Deploy" (Cloud Run : Déployer) où le champ "Service Account" (Compte de service) est renseigné avec le nom du compte de service Kubernetes.
    3. Si le service Google Cloud auquel vous essayez d'accéder nécessite des rôles supplémentaires, accordez-lui les rôles de compte de service Google que vous utilisez pour développer votre application :

Développement à distance avec le gestionnaire de secrets activé

Si vous développez votre application à distance, que vous utilisez un compte de service pour l'authentification et que votre application utilise des secrets, vous devez effectuer quelques étapes supplémentaires après avoir suivi les instructions pour le développement à distance. Ces étapes ont pour objectif d'attribuer à votre compte de service Google le rôle requis pour accéder à un secret spécifique du gestionnaire de secrets :

  1. Ouvrez le panneau "Secret Manager" (Gestionnaire de secrets) en cliquant sur l'onglet "Secret Manager" (Gestionnaire de secrets) dans la barre latérale droite de Cloud Code.

  2. Sélectionnez le secret auquel vous souhaitez accéder depuis votre code.

  3. Accédez à l'onglet "Autorisations", puis configurez les autorisations de votre secret en cliquant sur Icône de modification Modifier l'autorisation. La page de configuration de Secret Manager pour le secret s'ouvre dans votre navigateur Web.

    Onglet "Permissions" (Autorisations) sélectionné dans "Secret Manager" (Gestionnaire de secrets). On a accentué la visibilité de l'icône permettant de modifier les autorisations.

  4. Dans Google Cloud Console, cliquez sur Show Info Panel (Afficher le panneau d'informations), puis sur Add principal (Ajouter un compte principal).

  5. Attribuez le rôle Accesseur de secrets de Secret Manager à votre compte de service.

    Votre compte de service est autorisé à accéder à ce secret.

Assistance

Pour envoyer des commentaires ou signaler un problème dans votre IDE IntelliJ, accédez à Outils > Cloud Code > Aide / À propos > Envoyer des commentaires ou signaler un problème pour signaler un problème sur GitHub, ou posez une question sur Stack Overflow.

Vous pouvez également rejoindre le canal #cloud-code, qui fait partie de la communauté Slack Google Cloud.