Connexion à un service de code source

Donnez à votre agent accès au contexte des dépôts, des issues et des pull requests pour mener des investigations. Il peut lire les changements récents, identifier les problèmes connexes et ouvrir un problème ou une pull request dans le bon dépôt ou projet lorsque les identifiants que vous fournissez le permettent.

Ce tutoriel couvre GitHub, Azure DevOps et GitLab. Les connexions de code source utilisent la page Accès au code (Build + configuration > Context > Accès au code), et non l’assistant de connecteur géré. Cet article se concentre sur les détails du code source : comment chaque service s’authentifie et comment valider la connexion.

Prerequisites

  • Un agent SRE en cours de fonctionnement et un accès à sre.azure.com.
  • Permission de configurer l’agent.
  • Un compte sur le service ayant accès aux dépôts ou projets que l’agent doit lire.

Pour les services de notification, voir Connecter un service de notification.

Connecteurs de code source

Connecteur Service Authentication Utilisation classique
GitHub GitHub et GitHub Enterprise Cloud Utilisez votre propre application GitHub (OAuth et PAT également pris en charge pour github.com) Lire les dépôts, les tickets et les pull requests dans l’ensemble des projets et des organisations ; créer des tickets ou des pull requests avec approbation
Azure DevOps Azure DevOps Identité gérée (OAuth et PAT également pris en charge) Lire les dépôts et les demandes de tirage entre les projets ; créer des demandes de tirage ou des éléments de travail avec approbation
GitLab GitLab Jeton d’accès personnel (PAT) Lire les dépôts, les problèmes et les demandes de fusion ; créez des problèmes et des commentaires avec approbation

GitHub et Azure DevOps présentent les choix d’authentification sous forme de boutons radio. GitLab utilise un jeton d’accès personnel.

Étape 1 : Accéder à Code Access

  1. Accédez à sre.azure.com et sélectionnez votre agent.
  2. Dans la barre latérale de gauche, sélectionnez Construire + configurer>Contexte>.
  3. Sélectionnez l’onglet de votre service (GitHub, Azure DevOps ou GitLab).
  4. Sélectionnez Ajouter un référentiel.

Étape 2 : Authentification

La boîte de dialogue Ajouter des dépôts comporte deux étapes : Connexion et Ajout de dépôts. Sur Connexion, choisissez la plateforme et saisissez l’URL du dépôt ou l’organisation avant de configurer l’authentification. Sélectionnez Suivant après la connexion, puis enregistrez à la dernière étape.

Sélectionnez Utiliser votre application GitHub pour GitHub Enterprise Cloud ou pour définir l’accès par organisation ou installation.

  1. Saisissez une URL complète du dépôt, telle que https://github.com/owner/repo.
  2. Si un identifiant correspondant existe, sélectionnez Connexion existante pour la réutiliser ou Nouvelle connexion pour en configurer une autre.
  3. Dans la section Méthode de connexion, choisissez Utiliser votre application GitHub.
  4. Remplissez les champs de configuration de l’application affichés par l’assistant.
  5. Sélectionnez Connect et confirmez que la connexion a réussi.
  6. Sélectionnez Suivant.

GitHub Enterprise Cloud (.ghe.com) nécessite une connexion GitHub App. Pour github.com, OAuth et le token d’accès personnel (PAT) sont également pris en charge. L’authentification GitHub App nécessite l’URI d’une clé RSA Key Vault (/keys/), et non un URI de secret. Voir la configuration de l’application GitHub BYO.

Après la connexion, l’agent peut rechercher dans les dépôts, les issues et les pull requests dans l’ensemble des projets et des organisations auxquels votre application ou compte a accès.

Le service voit l’identité qui a servi à autoriser la connexion. Les issues, commentaires et activités de pull requests créés par l’agent apparaissent sous ce compte.

Étape 3 : Ajouter des dépôts

Passez en revue les dépôts à ajouter. Pour GitHub, dépliez chaque dépôt pour modifier son nom d’affichage et sa description. Pour Azure DevOps et GitLab, modifiez ces champs directement dans le tableau.

  1. Si votre service est Azure DevOps, sélectionnez d’abord un project dans le menu déroulant Azure DevOps Project. La colonne URL du dépôt se remplit de dépôts dans ce projet.

  2. Consultez l’URL du dépôt initiale. Pour plus d’entrées, sélectionnez un dépôt dans la liste déroulante ou tapez directement une URL. Dans Azure DevOps, sélectionnez d’abord le projet.

  3. Entrez un court nom d’affichage que l’agent utilise pour désigner le dépôt. Pour GitHub, développez l’entrée pour trouver ce champ.

  4. En option, saisissez une Description pour donner plus de contexte à l’agent sur le dépôt. Pour GitHub, sélectionnez d’abord « Ajouter une description ».

  5. Si votre environnement Azure DevOps propose une option Remote, vous pouvez l’utiliser pour une recherche alimentée par l’IA sans cloner l’intégralité du référentiel. Cette option n’est pas disponible dans tous les environnements.

  6. Pour ajouter un autre dépôt, sélectionnez Ajouter dépôt pour GitHub ou Ajouter dans la grille Azure DevOps ou GitLab. D’autres dépôts GitHub dans cette connexion utilisent le même hôte et les mêmes informations d’identification.

  7. Lorsque la table est terminée, sélectionnez Enregistrer.

Étape 4 : Valider avec un scénario

  1. Ouvrez une discussion avec votre agent.

  2. Posez une question déjà lue, par exemple :

    List the open issues in the payments repository from the last week.
    
  3. Vérifiez la fiche d’outil pour voir l’agent rechercher le service et renvoyer des résultats fondés sur vos données.

Lorsque des résultats apparaissent en référence à votre dépôt, la connexion fonctionne de bout en bout.

Résolution des problèmes

Problème Cause Réparer
La recherche ne retourne aucun résultat Le compte n’a pas accès au projet ou au dépôt Confirmez que le compte de connexion peut voir le projet ou le dépôt, puis réessayez.
La création échoue à cause d’une erreur d’autorisation Le jeton ou le compte n’a pas d’autorisation d’écriture Accordez la portée requise au jeton ou au compte, ou utilisez des identifiants ayant un accès en écriture.
GitHub Enterprise Cloud rejette la connexion GitHub Enterprise Cloud nécessite une connexion GitHub App Sur la page Code Access, déconnectez la connexion GitHub, sélectionnez Ajouter un référentiel, choisissez GitHub, entrez votre nom d’hôte .ghe.com, et sélectionnez Utiliser votre propre GitHub App comme méthode d’authentification.