Configurer les insights Developer Connect

Ce document explique comment configurer les insights Developer Connect pour les rendre disponibles dans les investigations Gemini Cloud Assist et dans Cloud Logging.

En savoir plus sur les insights Developer Connect.

Avant de commencer

  1. Connectez-vous à votre compte Google.

    Si vous n'en possédez pas déjà un, vous devez en créer un.

  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. L'activation de Developer Connect active également l' API Secret Manager.

  9. Installez Google Cloud CLI.

    Si vous l'avez déjà installée, assurez-vous d'avoir la dernière version en exécutant gcloud components update.

  10. Créez l'agent de service Developer Connect :
    gcloud beta services identity create \
    --service=developerconnect.googleapis.com \
    --project=PROJECT_NUM

    Le rôle roles/developerconnect.serviceAgent est automatiquement ajouté à cet agent de service.

Rôles requis

Si vous utilisez une application App Hub gérée par un projet de gestion :

  • Administrateur d'insights Developer Connect (roles/developerconnect.insightsAdmin) et lecteur App Hub (roles/apphub.viewer) sur le projet de gestion.
  • Rôle d'agent de service Developer Connect (roles/developerconnect.serviceAgent) et rôle d'agent d'insights Developer Connect (roles/developerconnect.insightsAgent) pour l'agent de service Developer Connect sur le projet de gestion.

Si vous utilisez une application App Hub gérée par un projet hôte :

  • Administrateur d'insights Developer Connect (roles/developerconnect.insightsAdmin) et lecteur App Hub (roles/apphub.viewer) sur le projet hôte.
  • Rôle d'agent de service Developer Connect (roles/developerconnect.serviceAgent) et rôle d'agent d'insights Developer Connect (roles/developerconnect.insightsAgent) pour l'agent de service Developer Connect sur le projet hôte.
  • Agent d'insights Developer Connect (roles/developerconnect.insightsAgent) sur tous les projets de service.
    • Si vous utilisez des ressources existantes (par exemple, Cloud Build ou Artifact Registry) qui ne se trouvent pas dans le même dossier, accordez le rôle d'agent d'insights Developer Connect à votre agent de service Developer Connect dans ces projets.

Pour afficher les insights à partir de la ligne de commande :

  • Lecteur d'insights Developer Connect (roles/developerconnect.insightsViewer) sur le projet hôte.
  • Rôle de lecteur d'occurrences d'analyse de conteneurs (roles/containeranalysis.occurrences.viewer) sur le projet hôte.

Certains outils peuvent nécessiter des rôles et des autorisations supplémentaires Google Cloud ou non Google et des autorisations pour être utilisés, ou pour des cas d'utilisation spécifiques. Si vous rencontrez des erreurs d'autorisation, vérifiez auprès de votre administrateur que vous disposez des rôles et des autorisations appropriés.

Outre ces rôles et autorisations, lorsque vous configurez une nouvelle configuration d'insights à l'aide du workflow interactif, vous devez disposer de l'autorisation d'accéder à toutes les ressources que vous spécifiez.

Conditions préalables supplémentaires

  • Si vous souhaitez que vos insights Developer Connect soient limités à une application App Hub, vous devez disposer de cette application ou la créer.

    Les insights Developer Connect sont compatibles avec tous les modèles de configuration App Hub pour les applications. Nous vous recommandons d'utiliser un dossier configuré pour la gestion des applications afin de pouvoir utiliser Gemini Cloud Assist et d'autres fonctionnalités axées sur les applications.

    Vous pouvez également limiter vos insights Developer Connect à un projet plutôt qu'à une application App Hub.

  • Vous devez utiliser Cloud Build et un système de gestion du code source compatible (GitHub, GitLab ou Bitbucket).

  • Votre build doit générer une provenance pour inclure des informations de provenance dans les journaux.

    Cela peut provenir de l'une des sources suivantes :

    • Utiliser Cloud Build et Artifact Registry

      Vous pouvez utiliser Cloud Build pour créer votre image. Le build doit être lancé à l'aide d'un déclencheur, et le processus de build doit générer une provenance. Les artefacts générés par votre build sont stockés dans Artifact Registry.

    • Utiliser les attestations GitHub

      Si vous utilisez la version 4 ou ultérieure de la docker/build-push-action, l'action ajoute automatiquement des attestations de provenance à votre image.

      Vous pouvez également utiliser actions/attest-build-provenance avec l'option push-to-registry pour publier l'attestation de provenance dans le registre de conteneurs, où les insights Developer Connect peuvent la lire, quel que soit le fournisseur de registre.

    • Utiliser l'option docker buildx provenance

      En savoir plus

    • Utiliser l'exportateur de registre docker buildx

      Et définissez oci-artifact sur true. En savoir plus

    Les attestations GitHub doivent provenir d'un dépôt accessible au public. L'artefact docker buildx doit être accessible au public dans le registre de conteneurs.

    Vous pouvez toujours utiliser les insights Developer Connect sans provenance, mais ils sont moins utiles.

  • Gemini Cloud Assist

    Les insights Developer Connect améliorent l'expérience Gemini Cloud Assist en ajoutant des événements de déploiement d'application au contexte d'investigation. Vous pouvez activer Gemini Cloud Assist pour utiliser les insights Developer Connect avec les investigations Gemini Cloud Assist.

  • Si vos insights Developer Connect sont limités à une application App Hub, votre configuration d'insights doit se trouver dans le même projet que cette application.

    Si elle est limitée par projet, la configuration n'a pas besoin de se trouver dans le même projet que le projet concerné.

    Il est recommandé, mais pas obligatoire, de placer vos autres ressources applicables (par exemple, les insights Developer Connect, les clusters Google Kubernetes Engine, les services Cloud Run, Cloud Build, les dépôts Artifact Registry) au même emplacement.

Créer votre application dans App Hub

Cela n'est pertinent que si vous limitez vos insights Developer Connect à une application App Hub.

  1. Configurez App Hub. Nous vous recommandons d'utiliser un dossier configuré pour la gestion des applications afin de pouvoir utiliser Gemini Cloud Assist et d'autres fonctionnalités axées sur les applications.

  2. Créez une application App Hub.

Configurer les insights Developer Connect pour votre application

Créez un insight Developer Connect à l'aide de la commande suivante :

gcloud developer-connect insights-configs create DCI_CONFIG_NAME \
       --project PROJECT_ID \
       --app-hub-application APP_HUB_APPLICATION_NAME \
       --target-projects TARGET_PROJECT_IDS \
       --location LOCATION

Où :

  • DCI_CONFIG_NAME est un nom pour la configuration d'insights qui sera générée.

  • PROJECT_ID est l'ID du projet dans lequel vous créez la configuration d'insights Developer Connect.

  • APP_HUB_APPLICATION_NAME est le nom complet de l'application App Hub que vous avez créée précédemment.

    Cela ne s'applique que si vous limitez cette configuration d'insights à une application App Hub plutôt qu'à un projet.

  • TARGET_PROJECT_IDS est la liste des ID de projets séparés par une virgule auxquels vous limitez la configuration d'insights Developer Connect.

    Cela ne s'applique que si vous limitez cette configuration d'insights à un projet plutôt qu'à une application App Hub.

  • LOCATION est la région dans laquelle vous souhaitez créer cette configuration d'insights.

Cette commande déclenche un processus de découverte automatique, qui recherche toutes les charges de travail et tous les services App Hub de votre projet. Ce processus vérifie également si vous disposez des autorisations nécessaires.

Cette commande renvoie également un OPERATION_ID, que vous pouvez utiliser pour vérifier l'état de la configuration.

Vous pouvez vérifier l'état de votre configuration d'insights Developer Connect :

gcloud developer-connect operations describe OPERATION_ID

OPERATION_ID est l'ID d'opération complet renvoyé par la gcloud developer-connect insights-configs create commande.

Cette opération est un accusé de réception de la requête initiale. Le champ response qu'elle contient est un instantané de la ressource au moment exact où la tâche de création a été acceptée. Pour obtenir l'état du processus de découverte, exécutez la commande insights-configs describe.

Une fois le processus de découverte automatique terminé, vous pouvez vérifier l'état de ces insights Developer Connect en exécutant la commande suivante :

gcloud developer-connect insights-configs describe DCI_CONFIG_NAME \
       --location=REGION

Où :

  • DCI_CONFIG_NAME est le nom que vous avez utilisé pour la gcloud developer-connect insights-configs create commande.

  • REGION est la région dans laquelle vous avez créé la configuration.

Étape suivante