GitHub-anslutningsprogram i Azure SRE Agent

Anslut dina GitHub lagringsplatser så att agenten kan läsa källkod, söka efter fel, skapa problem, utlösa arbetsflöden och matcha distributioner med incidenter.

Tips/Råd

Snabböversikt

  • Kodåtkomst ger din agent källkod, IaC och konfigurationer som undersökningskontext.
  • GitHub Connector aktiverar problem, PR och arbetsflödesåtgärder.
  • GitHub MCP ger fullständig GitHub verktygsåtkomst med styrningskontroller.
  • Autentisera med OAuth, PAT eller BYO GitHub App . Alla tre arbetar med github.com. GitHub Enterprise Cloud (<tenant>.ghe.com) kräver BYO-app.

Källkod, infrastrukturdefinitioner, distributionskonfigurationer, kunskaper och runbooks finns i GitHub. När agenten kan läsa dessa artefakter går utredningarna från generell felsökning till rotorsaksanalys som hänvisar till den exakta filen, den exakta committen och den exakta konfigurationsändringen.

Hur din agent använder GitHub-anslutningsappen

Azure SRE-agent ansluter till GitHub på tre sätt, var och en har ett annat syfte:

Anslutningstyp Var du konfigurerar den Vad din agent får
Kodåtkomst Kodåtkomst för builder > Kodsökning, filläsning efter sökväg/gren, korrelation från fel till källa, semantisk kodsökning
GitHub-anslutningsprogram Builder > Anslutningsappar > Lägg till anslutningsapp Skapa/lista problem, öppna/sammanfoga PRs, utlösa och spåra GitHub Actions arbetsflöden
GitHub MCP Builder > Anslutningsappar > Lägg till anslutningsapp Fullständig GitHub verktygskatalog via MCP, med godkännandeprinciper och kontroller för val av verktyg

Du kan använda flera anslutningstyper på samma agent. Var och en har olika körningsändamål.

Autentiseringsmetoder för GitHub-anslutningsappen

Separat från vad agenten gör väljer du hur den autentiserar till GitHub. Tre metoder är tillgängliga och de fungerar för alla anslutningstyper.

Autentiseringsmetod Så här fungerar det Värdar som stöds Passar bäst för
OAuth Logga in med ditt GitHub-konto i ett popup-fönster i webbläsaren github.com Snabb interaktiv installation (gräns: 10 token per agent)
PAT Ange en finkornig personlig åtkomsttoken med omfånget repo github.com Tjänstkonton, icke-interaktiva miljöer
BYO GitHub App Registrera din egen GitHub App, lagra den privata nyckeln i Azure Key Vault github.com och <tenant>.ghe.com Företagsstyrning, EMU-miljöer, GitHub Enterprise Cloud

För github.comfungerar alla tre metoderna för alla anslutningstyper. För GitHub Enterprise Cloud-värdar (<tenant>.ghe.com) är endast BYO-GitHub App tillgänglig.

Behörigheter efter autentiseringstyp

Operation Minst OAuth eller PAT GitHub App-minimum
Metadata för lagringsplats och klona/läsa repo för privata repor, public_repo för endast offentlig åtkomst Metadata för lagringsplats: Läs och Innehåll: Läs
Lista/skapa ärenden Repo-omfång med stöd för ärenden för OAuth/PAT Databasproblem: läsning/skrivning efter behov
Åtgärder för pull-begäranden PR-kompatibel lagringsplatsomfång för OAuth/PAT Pull-begäranden för lagringsplats: Läs/skriv efter behov

Tips/Råd

OAuth-token uppdateras automatiskt

GitHub OAuth-token upphör att gälla efter cirka åtta timmar, men agenten uppdaterar dem automatiskt innan de upphör att gälla med en 20-minutersbuffert. Varje uppdatering genererar en ny uppdateringstoken och skapar en självförsörjande förnyelsekedja som varar i ungefär sex månader. Din anslutning förblir aktiv under långa undersökningar och schemalagda uppgifter över natten utan att du behöver logga in manuellt.

Den här automatiska uppdateringen gäller endast för OAuth-anslutningar. PAT-anslutningar kräver manuell tokenrotation. För BYO-GitHub App-anslutningar roterar du den privata nyckeln i Azure Key Vault när det behövs.

När du behöver autentisera igen: Om uppdateringstoken upphör att gälla (cirka sex månader), om du återkallar GitHub appauktorisering, eller om anslutningsappen har konfigurerats före version 26.2.247.0 (en omautentisering lagrar uppdateringstoken och aktiverar automatisk uppdatering framöver).

Vad agenten kan göra med GitHub-anslutningsappen

Funktioner för källkodsanalys

  • Sök kod över alla anslutna lagringsplatser.
  • Läs filinnehåll efter sökväg och gren.
  • Korrelera fel med källkod: Mappa Azure-resursfel till specifika filer och radnummer.
  • Semantisk kodsökning: Hitta kod som är relaterad till en incident med hjälp av frågor på naturligt språk.
  • Identifiera IaC-filer: Identifiera Bicep-, Terraform- och ARM-mallar i dina lagringsplatser.

Hantering av ärende- och pull-begäranden

  • Skapa problem med rubrik, brödtext, etiketter och tilldelningar.
  • Kommentera problem och pull-begäranden , inklusive nyckelord för automatisk stängning.
  • Uppdatera problem genom att ändra rubrik, brödtext, etiketter eller tillstånd.
  • Hämta Dependabot-aviseringar för att granska säkerhetsrisker.

Arbetsflödesautomatisering

  • Utlös GitHub Actions-arbetsflöden för att utlösa kanarie- eller produktionsdriftsättningar.
  • Spåra arbetsflödeskörningar för att övervaka status för skickade arbetsflöden.
  • Kontrollera status för PR-sammanslagning för att kontrollera om en pull-begäran har sammanfogats.

GitHub Enterprise Cloud

Anslut lagringsplatser som finns på GitHub Enterprise Cloud (<tenant>.ghe.com) med hjälp av en BYO-GitHub-app. Agenten använder appens privata nyckel, som du lagrar i Azure Key Vault, för att skapa kortlivade installationstoken för varje lagringsplats.

Se till att du har:

  • En GitHub-app som har skapats på din GHE-instans med behörigheten Innehåll: skrivskyddad.
  • Appens privata nyckel lagras som en hemlighet i Azure Key Vault.
  • Agentens hanterade identitet har beviljats rollen Key Vault Secrets User för valvet.

Den fullständiga installationsguiden finns i Connect GitHub Enterprise Cloud-lagringsplatser.

Konfigurera samma repo i flera sökvägar

Konfigurera samma repo i flera GitHub-sökvägar. Varje sökväg används för olika jobb under körning.

Scenario Rekommenderat tillvägagångssätt
Behöver kodkontext plus problemåtgärder Konfigurera kodåtkomst och antingen GitHub Connector eller GitHub MCP
Behöver endast breda MCP-verktygskataloger Använd endast GitHub MCP
Kräver värd för företag (<tenant>.ghe.com) Använda GHE BYO-appen via kodåtkomst
Krav på strikt kontraktsbeteende för anslutningar Använda GitHub Connector

Begränsningar och krav

Resource Guidance
Hosts Konfigurera varje värd oberoende (github.com, <tenant>.ghe.com)
Autentiseringsposter Begränsad till värd; om du kopplar från en värd påverkar det inte andra värdar
GitHub Enterprise Cloud-autentisering Endast BYO-app
Key Vault-krav för BYO App Den privata nyckeln måste vara i Key Vault och läsbar efter agentidentitet

Felsökning

Symptom Sannolik orsak Reparera
Code Access-lagringsplatsens rad visar Misslyckades, men problemfrågor fungerar fortfarande Fel vid hälsokontroll för en annan ändpunkt eller tidpunkt Testa code access-anslutningen igen och verifiera lagringsplatsens metadatabehörigheter
BYO-appverifieringen misslyckas Klient-ID, URI för privat nyckel eller omfång för appinstallation stämmer inte överens Verifiera klient-ID, Key Vault hemligt innehåll och appinstallationsomfång
<tenant>.ghe.com hosten visar inte OAuth/PAT Förväntat beteende Använda BYO GitHub App
Kloning/läsning misslyckas när autentiseringen har slutförts Läsbehörigheter för metadata och innehåll saknas på app eller token Bevilja de nödvändiga behörigheterna för repot och försök igen
PR- eller ärendeåtgärder misslyckas Problem/PR-behörigheter saknas Lägg till behörigheter för ärenden/PR i OAuth/PAT-behörighetsomfånget eller GitHub-app

Kom igång med GitHub-anslutningsappen

Vad du vill göra Guide
Ge din agent kodkontext för undersökningar (OAuth/PAT) Ansluta källkod
Aktivera problem-, PR- och arbetsflödesåtgärder (OAuth/PAT) Konfigurera GitHub-anslutning
Konfigurera BYO GitHub App för github.com eller <tenant>.ghe.com Anslut GitHub Enterprise Cloud
Lägga till GitHub MCP-verktyg med styrningskontroller Konfigurera en MCP-anslutning

Nästa steg