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 Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. 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 Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.- 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. -
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 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-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.Utiliser l'option
docker buildx provenanceUtiliser l'exportateur de registre
docker buildxEt 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'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.
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 existantes Google Cloud , consultez Enregistrer des ressources dans une application.
- Pour concevoir et déployer une nouvelle application, vous pouvez utiliser App 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 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
Où 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 createcommande.REGION est la région dans laquelle vous avez créé la configuration.
Étape suivante
- En savoir plus sur les insights Developer Connect
- Découvrez comment utiliser les insights Developer Connect