Conector do GitHub no Azure SRE Agent

Ligue os seus repositórios do GitHub para que o seu agente possa ler código-fonte, procurar erros, criar problemas, ativar fluxos de trabalho e combinar implementações com incidentes.

Sugestão

Visão geral rápida

  • Code Access dá ao seu agente acesso ao código-fonte, à IaC e aos ficheiros de configuração como contexto para a investigação.
  • GitHub Connector permite operações sobre incidentes, PRs e fluxos de trabalho.
  • GitHub MCP fornece acesso GitHub completo às ferramentas com controlos de governação.
  • Autenticar com OAuth, PAT ou BYO GitHub App . Os três funcionam com github.com. GitHub Enterprise Cloud (<tenant>.ghe.com) requer a aplicação BYO.

O seu código-fonte, definições de infraestrutura, configurações de implementação, competências e runbooks estão no GitHub. Quando o seu agente consegue ler estes artefactos, as investigações passam de uma resolução genérica de problemas para uma análise de causa raiz que faz referência ao ficheiro exato, ao commit exato e à alteração exata da configuração.

Como o teu agente usa o conector do GitHub

O Azure SRE Agent liga-se ao GitHub de três formas, cada uma com um propósito diferente:

Tipo de ligação Onde o configuras O que o seu agente recebe
Acesso ao Código Acesso ao Código do Builder > Pesquisa de código, leitura de ficheiros por caminho/ramo, correlação de erro para fonte, pesquisa de código semântico
Conector GitHub Builder > Conectores > Adicionar conector Criar/listar problemas, abrir/fundir PRs, ativar e acompanhar fluxos de trabalho do GitHub Actions
GitHub MCP Builder > Conectores > Adicionar conector Catálogo completo de ferramentas do GitHub via MCP, com políticas de aprovação e controlos de seleção de ferramentas

Podes usar vários tipos de ligação no mesmo agente. Cada uma serve um propósito diferente durante a execução.

Métodos de autenticação para o conector GitHub

Separadamente do que o agente faz, escolhe como ele se autentica no GitHub. Existem três métodos disponíveis, que funcionam em todos os tipos de ligação.

Método de autenticação Como funciona Anfitriões suportados Melhor para
OAuth Inicie sessão com a sua conta GitHub num popup do navegador github.com Configuração interativa rápida (limite: 10 tokens por agente)
PAT Fornecer um token de acesso pessoal granular com âmbito repo github.com Contas de serviço, ambientes não interativos
Aplicação GitHub BYO Registe a tua própria aplicação GitHub, guarda a chave privada no Azure Key Vault github.com e <tenant>.ghe.com Governação empresarial, ambientes EMU, GitHub Enterprise Cloud

Para github.com, os três métodos funcionam em todos os tipos de conexão. Para GitHub hosts Enterprise Cloud (<tenant>.ghe.com), apenas a BYO GitHub App está disponível.

Permissões por tipo de autenticação

Funcionamento Mínimo de OAuth ou PAT Mínimo para aplicação GitHub
Metadados do repositório e clonagem/leitura repo para repositórios privados, public_repo para acesso apenas público Metadados do Repositório: Ler e Conteúdos: Ler
Listar/criar problemas Escopo de repositório capaz de emitir para OAuth/PAT Problemas no Repositório : Ler/Escrever conforme necessário
Operações de pull request Escopo de repositório compatível com PR para OAuth/PAT Repositório Pedidos de pull: Ler/escrever conforme necessário

Sugestão

Os tokens OAuth atualizam-se automaticamente

Os tokens OAuth do GitHub expiram após cerca de oito horas, mas o agente atualiza-os automaticamente antes da expiração usando um buffer de 20 minutos. Cada atualização gera um novo token de atualização, criando uma cadeia de renovação auto-sustentável que dura cerca de seis meses. O seu conector permanece ligado durante investigações prolongadas e tarefas agendadas para a noite, sem necessidade de iniciar sessão manualmente.

Esta atualização automática aplica-se apenas a ligações OAuth. As ligações PAT requerem rotação manual do token. Para ligações do BYO GitHub App, proceda à rotação da chave privada no Azure Key Vault quando necessário.

Quando precisar de re-autenticar: Se o token de atualização expirar (cerca de seis meses), se revogar a autorização da GitHub App, ou se o seu conector foi configurado antes da versão 26.2.247.0 (uma reautenticação armazena o token de atualização e ativa a atualização automática daqui para a frente).

O que o agente pode fazer com o conector GitHub

Capacidades de análise do código-fonte

  • Pesquise código em todos os repositórios ligados.
  • Leia o conteúdo do ficheiro por caminho e ramo.
  • Correlacionar erros com o código-fonte: Mapear erros de recursos do Azure para ficheiros e números de linha específicos.
  • Pesquisa por código semântico: Encontre código relacionado com um incidente usando consultas em linguagem natural.
  • Identificar ficheiros IaC: Detetar modelos Bicep, Terraform e ARM nos seus repositórios.

Gestão de problemas e pull requests

  • Crie questões com o título, corpo, etiquetas e os responsáveis.
  • Comente questões e pull requests , incluindo palavras-chave de encerramento automático.
  • Atualize os problemas alterando o título, corpo, etiquetas ou estado.
  • Busque alertas do Dependabot para rever vulnerabilidades de segurança.

Automação do fluxo de trabalho

  • Acionar fluxos de trabalho do GitHub Actions para desencadear implementações canário ou de produção.
  • Acompanhar as execuções de fluxos de trabalho para monitorizar o estado de fluxos de trabalho acionados.
  • Verifique o estado da fusão de PR para verificar se um pull request foi fundido.

GitHub Enterprise Cloud

Ligue repositórios alojados na GitHub Enterprise Cloud (<tenant>.ghe.com) usando uma aplicação BYO GitHub. O agente usa a chave privada da sua aplicação, que armazena no Azure Key Vault, para criar tokens de instalação de curta duração para cada repositório.

Certifique-se de que tem:

  • Uma aplicação GitHub criada na sua instância GHE com permissão Conteúdo: Só leitura.
  • A chave privada da aplicação é armazenada como segredo no Azure Key Vault.
  • A identidade gerida do agente concedia Key Vault papel de Utilizador de Segredos no cofre.

Para consultar o guia de configuração completo, consulte Connect GitHub Enterprise Cloud repositories.

Configure o mesmo repositório em múltiplos caminhos

Configura o mesmo repositório em vários caminhos do GitHub. Cada caminho serve tarefas de execução diferentes.

Scenario Abordagem recomendada
Precisa de contexto de código mais operações de emissão Configure o Acesso ao Código e o GitHub Connector ou o GitHub MCP
Só preciso de um catálogo amplo de ferramentas MCP Usa apenas o GitHub MCP
Necessita de alojamento empresarial (<tenant>.ghe.com) Use a aplicação GHE BYO através de Acesso por Código
É necessário um comportamento rigoroso dos contratos de ligação Utilize o GitHub Connector

Limites e restrições

Recurso Orientações
Hosts Configure cada host independentemente (github.com, <tenant>.ghe.com)
Registos de autenticação Ao nível do host; desconectar um host não desconecta outro
Autenticação do GitHub Enterprise Cloud Apenas a aplicação BYO
Requisito do Key Vault para a aplicação BYO A chave privada deve estar no Key Vault e ser legível pela identidade do agente

Troubleshooting

Symptom Causa provável Corrigir
A linha do repo Code Access mostra Falha, mas as consultas de problemas continuam a funcionar Falha na verificação do estado de funcionamento de um endpoint diferente ou num determinado momento Testar novamente a ligação ao Code Access e verificar as permissões dos metadados do repositório
Validação da aplicação BYO falha Incompatibilidade no ID de cliente, no URI da chave privada ou no âmbito de instalação da aplicação Verificar o ID do Cliente, o conteúdo secreto do Key Vault e o âmbito da instalação da aplicação
<tenant>.ghe.com host não mostra OAuth/PAT Comportamento esperado Usa a aplicação GitHub do BYO
A clonagem/leitura falham depois de a autenticação ser bem-sucedida Permissões de leitura de metadados/conteúdos em falta na aplicação ou no token Conceda as permissões de repositório necessárias e tente novamente
Relações públicas ou ações de emissão falham Permissão de emissão/PR em falta Adicionar permissões de issue/PR ao âmbito OAuth/PAT ou à aplicação GitHub

Comece com o conector GitHub

O que queres fazer Guide
Dê ao seu agente o contexto do código para fins de investigação (OAuth/PAT) Liga o código-fonte
Ativar operações de emissão, PR e workflow (OAuth/PAT) Configurar GitHub conector
Configura a aplicação BYO GitHub para github.com ou <tenant>.ghe.com Ligar ao GitHub Enterprise Cloud
Adicione ferramentas MCP do GitHub com controlos de governação Configurar um conector MCP

Próximo passo