Se connecter à GitHub

Cette page explique comment créer des connexions à GitHub et des liens vers des dépôts GitHub. Vous pouvez effectuer ces tâches à l'aide de la Google Cloud console, ou de Google Cloud CLI.

Ces instructions sont destinées aux développeurs d'applications, aux administrateurs de plates-formes et aux responsables de la sécurité qui souhaitent utiliser des dépôts de code source GitHub avec Google.

Par exemple, vous pouvez obtenir des suggestions de codage de Gemini Code Assist, adaptées à votre codebase, ou utiliser vos dépôts GitHub associés pour développer des applications Web avec Firebase App Hosting.

Pour en savoir plus sur Developer Connect, consultez la page Présentation de 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. Assurez-vous d'avoir accès à un compte sur GitHub.

    Pour assurer la sécurité du travail de votre équipe, nous vous recommandons d'effectuer les tâches décrites dans ce guide à l'aide d'un compte de bot ou d'un compte partagé par votre équipe, et non d'un compte personnel.

  10. Assurez-vous de posséder un dépôt GitHub ou de disposer d'autorisations de niveau administrateur sur un dépôt partagé.
  11. Facultatif : Créez une clé de chiffrement gérée par le client (CMEK) pour chiffrer les secrets d'authentification créés par Developer Connect.
  12. Facultatif : Pour utiliser les instructions de ligne de commande de ce guide, procédez comme suit :
    1. Installez la Google Cloud CLI. Si vous avez déjà installé la gcloud CLI, assurez-vous de disposer de la dernière version disponible en exécutant la commande gcloud components update.
    2. Créez un compte de service Developer Connect en exécutant la commande suivante, où PROJECT_ID correspond à l'Google Cloud ID de votre projet :
              gcloud beta services identity create \
                  --service=developerconnect.googleapis.com \
                  --project=PROJECT_ID
              

Rôles requis

Pour obtenir les autorisations nécessaires pour créer des connexions et des liens, demandez à votre administrateur de vous accorder les rôles IAM suivants :

  • Si vous n'êtes pas le propriétaire du projet : administrateur Developer Connect (roles/developerconnect.admin) sur votre compte utilisateur.
  • Si vous prévoyez d'utiliser une clé CMEK pour chiffrer les secrets créés par Developer Connect : chiffreur/déchiffreur de CryptoKey Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter) sur le compte de service Secret Manager.
  • Si vous prévoyez d'utiliser la gcloud CLI pour suivre les étapes de ce guide : rôle d'administrateur Secret Manager (roles/secretmanager.admin) sur le compte de service Developer Connect.
  • Si vous prévoyez d'utiliser la Google Cloud console pour suivre les étapes de ce guide : administrateur IAM de projet (roles/resourcemanager.projectIamAdmin) sur votre compte utilisateur.

Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Créer une connexion

Cette section explique comment créer une connexion entre Developer Connect et GitHub. Si vous utilisez la Google Cloud console, vous pouvez également commencer à ajouter des liens vers des dépôts lorsque vous avez terminé de configurer votre connexion.

Pour créer une connexion GitHub, sélectionnez l'une des options suivantes :

Console

Pour lancer une connexion, procédez comme suit :

  1. Dans la Google Cloud console, ouvrez Developer Connect.

    Accéder à Developer Connect

    Developer Connect affiche la page Dépôts Git.

    • Si une liste de fournisseurs de gestion du code source s'affiche : commencez à configurer votre première connexion en sélectionnant un fournisseur de gestion du code source. Cliquez sur Connecter sur la fiche GitHub.
    • Si un tableau répertoriant les connexions existantes s'affiche : définissez le fournisseur de gestion du code source en cliquant sur Créer une connexion > GitHub.

      La page Créer une connexion s'ouvre.

  2. Dans le champ Région, choisissez une région pour vos ressources de connexion.

    1. Dans le champ Nom, saisissez un nom pour votre nouvelle connexion.
  3. Cochez la case Activer une connexion conforme à la résidence des données pour que cette connexion soit conforme aux exigences de résidence des données.

    Les connexions GitHub créées à l'aide de la Google Cloud console sont conformes à la résidence des données si vous cochez cette case lorsque vous créez la connexion. Dans ce cas, Developer Connect crée une application GitHub.

    Lorsque vous créez des connexions GitHub à l'aide de Google Cloud CLI, elles ne sont pas conformes à la résidence des données. Tous les autres types de connexion sont conformes à la résidence des données.

  4. Cliquez sur Afficher plus pour afficher les paramètres de configuration facultatifs.

    1. Facultatif : Dans la section Chiffrement, sélectionnez une clé CMEK pour chiffrer les secrets Secret Manager créés par Developer Connect.

    2. Facultatif : Par défaut, Developer Connect peut agir en tant que proxy pour les appels Git vers GitHub. Pour désactiver cette option, décochez la case Activer le proxy Developer Connect.

  5. Cliquez sur Continuer.

  6. Cliquez sur J'ai compris et je continue pour accepter de partager votre jeton OAuth GitHub avec Developer Connect et de le stocker dans Secret Manager.

  7. Si vous y êtes invité, connectez-vous à GitHub.

  8. Cliquez sur Autoriser Developer Connect pour autoriser l'application Google Developer Connect à accéder à votre compte GitHub.

    Si cette invite ne s'affiche pas, cela signifie que l'autorisation a déjà été accordée sur ce compte.

  9. Si vous avez sélectionné Activer une connexion conforme à la résidence des données, vous êtes invité à créer une application GitHub.

    1. Saisissez un nom pour cette application GitHub.

    2. Cliquez sur Créer une application GitHub.

    3. Sélectionnez la cible où vous souhaitez installer l'application (votre compte GitHub ou une organisation).

    4. Sélectionnez les dépôts pour lesquels installer l'application GitHub, ou Tous les dépôts, puis cliquez sur Installer.

    5. Sélectionnez les dépôts à associer pour cette connexion, puis cliquez sur OK.

    6. Cliquez sur Associer.

GitHub crée un jeton et Developer Connect le stocke dans votre Google Cloud projet en tant que secret Secret Manager. Pour en savoir plus sur la gestion des secrets, consultez Afficher les détails d'un secret.

Si vous avez activé la résidence des données, vous disposez désormais d'une application GitHub que vous pouvez gérer en cliquant sur Gérer l'installation sur la page Détails de la connexion.

Configurer la connexion

Les étapes suivantes sont obligatoires si vous n'avez pas coché la case Activer une connexion conforme à la résidence des données.

Accordez des autorisations sur votre compte GitHub et associez-le à des dépôts en suivant les instructions ci-dessous. Les invites qui s'affichent dans votre navigateur Web dépendent du fait que l'application GitHub Developer Connect est déjà installée sur le compte GitHub.

Dans la boîte de dialogue Developer Connect, procédez comme suit :

Si une liste de comptes GitHub s'affiche, installez l'application et associez des dépôts en procédant comme suit :

  1. Choisissez le compte GitHub que vous souhaitez utiliser.

  2. Sélectionnez un ou plusieurs dépôts auxquels vous souhaitez accorder l'accès.

Si vous êtes invité à réutiliser une installation d'application existante, choisissez où configurer l'application en procédant comme suit :

  1. Cliquez sur Compte GitHub pour afficher les comptes sur lesquels l'application Google Developer Connect est installée. Si vous voyez le compte que vous souhaitez utiliser, sélectionnez-le en cliquant sur Confirmer.

  2. Si vous ne voyez pas le compte que vous souhaitez utiliser, procédez comme suit :

    1. Sélectionnez Installer l'application GitHub sur un autre compte GitHub , puis cliquez sur Confirmer.

    2. Suivez les étapes GitHub pour autoriser l'installation de l'application.

    3. Sélectionnez un ou plusieurs dépôts auxquels vous souhaitez accorder l'accès.

Une fois la boîte de dialogue fermée, l'installation de l'application est terminée.

Une fois la connexion créée, la page Associer des dépôts s'affiche.

Pour associer des dépôts à votre connexion, procédez comme suit :

  1. Dans la liste des dépôts disponibles, sélectionnez ceux que vous souhaitez utiliser.

  2. Cliquez sur OK.

  3. Cliquez sur Associer.

Votre connexion est ajoutée à la page Connexions et vos liens de dépôt sont ajoutés à la page Dépôts de la Google Cloud console. Vous pouvez ajouter d'autres liens à des connexions existantes à tout moment.

Si vous configurez Gemini Code Assist, poursuivez le processus en suivant les étapes décrites dans Configurer et utiliser la personnalisation du code Gemini Code Assist.

gcloud

Les tâches suivantes nécessitent des actions dans votre navigateur Web.

Pour lancer une connexion, procédez comme suit :

  1. Exécutez la gcloud developer-connect connections create commande pour créer une connexion à GitHub :

    gcloud developer-connect connections create CONNECTION_NAME \
        --location=REGION \
        --github-config-app=APP_TYPE
        --git-proxy-config-enabled
    

    Remplacez les éléments suivants :

    • CONNECTION_NAME : nom de votre connexion.
    • REGION : la région de votre connexion.
    • APP_TYPE : type d'application à installer dans GitHub. Choisissez l'une des options suivantes :

      FIREBASE pour une utilisation avec Firebase App Hosting

      DATAFORM pour une utilisation avec Dataform

      GEMINI_CODE_ASSIST pour une utilisation avec Gemini Code Assist

      DEVELOPER_CONNECT pour tout le reste

    • --git-proxy-config-enabled: indicateur facultatif qui permet à Developer Connect d'agir en tant que proxy pour les appels Git vers GitHub. Cette fonctionnalité est en version Bêta.

    Un nom de connexion est créé.

  2. Terminez la création de la connexion en installant l'application GitHub Developer Connect. Exécutez la commande suivante pour obtenir l'URI d'installation de l'application :

    gcloud developer-connect connections describe CONNECTION_NAME \
        --location=REGION
    

    Remplacez les éléments suivants :

    • CONNECTION_NAME : nom de votre connexion.
    • REGION : la région de votre connexion.

    Developer Connect renvoie un lien pour effectuer les étapes suivantes dans une fenêtre de navigateur. Copiez ce lien.

  3. Ouvrez le lien dans un navigateur Web.

  4. Cliquez sur J'ai compris et je continue pour accepter de partager votre jeton OAuth GitHub avec Developer Connect et de le stocker dans Secret Manager.

  5. Si vous y êtes invité, connectez-vous à GitHub.

  6. Cliquez sur Autoriser Developer Connect pour autoriser l'application Google Developer Connect à accéder à votre compte GitHub.

    Si cette invite ne s'affiche pas, cela signifie que l'autorisation a déjà été accordée sur ce compte.

GitHub crée un jeton et Developer Connect le stocke dans votre Google Cloud projet en tant que secret Secret Manager. Pour en savoir plus sur la gestion des secrets, consultez Afficher les détails d'un secret.

Si vous avez activé une connexion conforme à la résidence des données, vous disposez désormais d'une application GitHub que vous pouvez gérer en cliquant sur Gérer l'installation sur la page Détails de la connexion.

Configurer la connexion

Accordez des autorisations sur votre compte GitHub et associez-le à des dépôts en suivant les instructions ci-dessous. Les invites qui s'affichent dans votre navigateur Web dépendent du fait que l'application GitHub Developer Connect est déjà installée sur le compte GitHub.

Dans la boîte de dialogue Developer Connect, procédez comme suit :

Si une liste de comptes GitHub s'affiche, installez l'application et associez des dépôts en procédant comme suit :

  1. Choisissez le compte GitHub que vous souhaitez utiliser.

  2. Sélectionnez un ou plusieurs dépôts auxquels vous souhaitez accorder l'accès.

Si vous êtes invité à réutiliser une installation d'application existante, choisissez où configurer l'application en procédant comme suit :

  1. Cliquez sur Compte GitHub pour afficher les comptes sur lesquels l'application Google Developer Connect est installée. Si vous voyez le compte que vous souhaitez utiliser, sélectionnez-le en cliquant sur Confirmer.

  2. Si vous ne voyez pas le compte que vous souhaitez utiliser, procédez comme suit :

    1. Sélectionnez Installer l'application GitHub sur un autre compte GitHub , puis cliquez sur Confirmer.

    2. Suivez les étapes GitHub pour autoriser l'installation de l'application.

    3. Sélectionnez un ou plusieurs dépôts auxquels vous souhaitez accorder l'accès.

Une fois la boîte de dialogue fermée, l'installation de l'application est terminée.

Vérifier la connexion

Vérifiez la création de votre connexion GitHub en exécutant la commande suivante :

gcloud developer-connect connections describe CONNECTION_NAME \
    --location=REGION

Remplacez les éléments suivants :

  • CONNECTION_NAME : nom de votre connexion.
  • REGION : région de votre connexion.

Developer Connect renvoie un état dans le champ installationState. Si la valeur de ce champ est COMPLETE, l'installation de votre application est terminée. Sinon, Developer Connect renvoie un URI pour vous rediriger vers la configuration dans le navigateur.

Une fois votre connexion établie, choisissez les dépôts à associer en suivant les instructions de la section Ajouter des liens de dépôt à des connexions existantes.

Une fois que vous avez établi une connexion à GitHub, vous pouvez créer des liens vers des dépôts. Vous pouvez répéter ces étapes ultérieurement pour associer d'autres dépôts si nécessaire.

Pour créer des liens de dépôt sur une connexion GitHub existante, sélectionnez l'une des options suivantes :

Console

  1. Ouvrez la page Dépôts dans la Google Cloud console.

    Ouvrir la page Dépôts

  2. Cliquez sur Associer le dépôt.

    Le volet Associer des dépôts Git s'ouvre.

  3. Dans la liste des connexions, choisissez une connexion.

  4. Cliquez sur Continuer.

  5. Dans la liste des dépôts, sélectionnez ceux que vous souhaitez associer.

  6. Cliquez sur Créer.

Developer Connect crée les liens de dépôt et les affiche dans la Google Cloud console.

gcloud

Exécutez la commande ci-dessous.

gcloud developer-connect connections git-repository-links create REPO_NAME \
    --clone-uri=REPO_URI \
    --connection=CONNECTION_NAME \
    --location=REGION

Remplacez les éléments suivants :

  • REPO_NAME : nom de votre dépôt.
  • REPO_URI : lien vers votre dépôt GitHub. Exemple : https://github.com/cloud-build/test-repo.git.
  • CONNECTION_NAME : nom de votre connexion.
  • REGION : la région de votre connexion.

Developer Connect crée les liens de dépôt.

Pour lister les dépôts associés, exécutez la developer-connect connections git-repository-links list commande.

Si vous configurez Gemini Code Assist, poursuivez le processus en suivant les étapes décrites dans Configurer et utiliser la personnalisation du code Gemini Code Assist.

Partage des données

Le contenu des Google Cloud ressources associées à cette connexion peut être transféré vers GitHub. Cette instruction s'applique à toutes les ressources, existantes et futures, qui utilisent cette connexion. Pour arrêter de partager des informations avec GitHub, supprimez les connexions Developer Connect dans la Google Cloud console ou la gcloud CLI, et révoquez l'accès dans GitHub.

Étape suivante