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
-
Connectez-vous à votre compte Google.
Si vous n'en possédez pas déjà un, vous devez en créer un.
-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
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 theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.- Installez la Google Cloud CLI.
Si vous l'avez déjà installé, assurez-vous de disposer de la dernière version en exécutant
gcloud components update. -
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.serviceAgentest automatiquement ajouté à cet agent de service.
L'activation de Developer Connect active également l'API Secret Manager.
Rôles requis
Si votre configuration des insights est limitée à une application App Hub gérée par un projet de gestion (limite de dossier) :
- L'utilisateur qui configure les insights doit disposer des rôles suivants dans le projet de gestion :
- Administrateur d'insights Developer Connect (
roles/developerconnect.insightsAdmin) - Lecteur App Hub (
roles/apphub.viewer)
- Administrateur d'insights Developer Connect (
- L'agent de service Developer Connect a besoin des rôles suivants :
- Rôle d'agent de service Developer Connect (
roles/developerconnect.serviceAgent) et rôle d'agent Developer Connect Insights (roles/developerconnect.insightsAgent) dans le projet de gestion. - Rôle Agent Insights Developer Connect (
roles/developerconnect.insightsAgent) du dossier contenant le projet de gestion.
- Rôle d'agent de service Developer Connect (
Si votre configuration des insights est limitée à une application App Hub gérée par un projet hôte :
- L'utilisateur qui configure les insights doit disposer des rôles suivants dans le projet hôte :
- Administrateur d'insights Developer Connect (
roles/developerconnect.insightsAdmin) - Lecteur App Hub (
roles/apphub.viewer)
- Administrateur d'insights Developer Connect (
- L'agent de service Developer Connect a besoin des rôles suivants :
- Rôle Agent de service Developer Connect (
roles/developerconnect.serviceAgent) et rôle Agent Insights Developer Connect (roles/developerconnect.insightsAgent) sur le projet hôte. - Le rôle d'agent Insights Developer Connect (
roles/developerconnect.insightsAgent) sur tous les projets de service. - Si vous utilisez des ressources existantes (par exemple, depuis Cloud Build ou Artifact Registry) qui ne se trouvent pas dans le même dossier, accordez le rôle Agent Developer Connect Insights à l'agent de service Developer Connect du projet hôte dans ces projets.
- Rôle Agent de service Developer Connect (
Si votre configuration des insights est limitée à des projets cibles individuels :
- L'utilisateur qui configure les insights doit disposer des rôles suivants dans le projet hôte :
- Administrateur d'insights Developer Connect (
roles/developerconnect.insightsAdmin).
- Administrateur d'insights Developer Connect (
- L'agent de service Developer Connect a besoin des rôles suivants :
- Rôle Agent de service Developer Connect (
roles/developerconnect.serviceAgent) et rôle Agent Insights Developer Connect (roles/developerconnect.insightsAgent) sur le projet hôte. - Rôle Agent Insights Developer Connect (
roles/developerconnect.insightsAgent) sur tous les projets cibles.
- Rôle Agent de service Developer Connect (
Pour afficher des insights depuis la ligne de commande, les utilisateurs qui consultent les insights doivent :
- Lecteur d'insights Developer Connect (
roles/developerconnect.insightsViewer) sur le projet hôte. - Rôle Lecteur d'occurrences Container Analysis (
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 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 autorisations appropriés.
En plus de ces rôles et autorisations, lorsque vous configurez une configuration d'insights à l'aide du workflow interactif, vous devez être autorisé à 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 posséder ou créer cette application.
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 définir le champ d'application de vos insights Developer Connect sur un projet au lieu d'une application App Hub.
Vous devez utiliser Cloud Build et un système de gestion du code source compatible (GitHub, GitLab ou Bitbucket).
Votre compilation doit générer une provenance pour inclure des informations de provenance dans les journaux.
Il peut provenir de l'une des sources suivantes :
Utilisez Cloud Build et Artifact Registry.
Vous pouvez utiliser Cloud Build pour créer votre image. La compilation doit être lancée à l'aide d'un déclencheur, et le processus de compilation doit générer la provenance. Les artefacts générés par votre compilation sont stockés dans Artifact Registry.
Utilisez les attestations GitHub.
Si vous utilisez la version 4 ou ultérieure de
docker/build-push-action, l'action ajoute automatiquement des attestations de provenance à votre image.Vous pouvez également utiliser
actions/attest-build-provenanceavec l'optionpush-to-registrypour 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.Utilisez l'option
docker buildx provenance.Utilisez l'exportateur de registre
docker buildx.Définissez
oci-artifactsurtrue. En savoir plus
Les attestations GitHub doivent provenir d'un dépôt accessible au public. L'artefact
docker buildxdoit ê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'applications 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 la configuration est limitée à un projet, elle 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 ne s'applique que si vous limitez vos insights Developer Connect à une application App Hub.
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.
Créez une application App Hub.
- Pour créer une application à partir de ressources Google Cloud existantes, consultez Enregistrer des ressources dans une application.
- Pour concevoir et déployer une nouvelle application, vous pouvez utiliser Application Design Center.
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 le nom de la configuration d'insight qui sera générée.
PROJECT_ID est l'ID du projet dans lequel vous créez la configuration des 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 la portée de cette configuration d'insights à une application App Hub plutôt qu'à un projet.
TARGET_PROJECT_IDS est la liste des ID de projets auxquels vous limitez la portée de cette configuration des insights Developer Connect, séparés par une virgule.
Cela ne s'applique que si vous définissez la portée de cette configuration d'insights sur un projet plutôt que sur 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 permet également de vérifier 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 la configuration de vos insights Developer Connect :
gcloud developer-connect operations describe OPERATION_ID
où OPERATION_ID est l'ID d'opération entièrement spécifié renvoyé par la commande gcloud developer-connect insights-configs create.
Cette opération est un accusé de réception de la demande initiale. Le champ response qu'il 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 commande
gcloud developer-connect insights-configs create.REGION correspond à la région dans laquelle vous avez créé la configuration.
Étapes suivantes
- En savoir plus sur les insights Developer Connect
- Découvrez comment utiliser les insights Developer Connect.