Publicamos atualizações frequentes em nossa documentação, e a tradução desta página ainda pode estar em andamento. Para obter as informações mais recentes, acesse a documentação em inglês. Se houver problemas com a tradução desta página, entre em contato conosco.

Esta versão do GitHub Enterprise foi descontinuada em 2020-11-12. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, melhorar a segurança e novos recursos, upgrade to the latest version of GitHub Enterprise. Para ajuda com a atualização, contact GitHub Enterprise support.

Primeiros passos com a API de verificações

A API de Execução de Verificações permite que você crie aplicativos GitHub que executam verificações poderosas contra alterações de código em um repositório. Você pode criar os aplicativos que realizam integração contínua, linting ou serviços de varredura de código e fornecem feedback detalhado sobre commits.

Neste artigo

Visão Geral

Em vez de proporcionar status de criação de aprovação/falha, os aplicativos GitHub podem relatar status enriquecidos, anotar linhas de código com informações detalhadas e executar testes novamente. A funcionalidade API de Verificação está disponível exclusivamente para os seus aplicativos GitHub.

Para obter um exemplo de como usar a API de verificação com um aplicativo GitHub, consulte "Criar testes de CI com a API de verificações".

Sobre os conjuntos de verificações

Quando alguém faz push de código em um repositório, o GitHub cria um conjunto de verificações para o último commit. Um conjunto de verificações é uma coleção de execuções de verificação criadas por um único aplicativo GitHub para um commit específico. Os conjuntos de verificações resumem o estado e conclusão das execuções de verificação que um conjunto inclui.

Fluxo de trabalho dos conjuntos de verificações

O conjunto de verificações reporta conclusão da execução da verificação com a prioridade mais alta na conclusão do conjunto de verificações. Por exemplo, se três execuções de verificações tiverem conclusões timed_out, success e neutral a conclusão do conjunto de verificações será timed_out.

Por padrão, o GitHub cria um conjunto de verificações automaticamente quando o código é carregado no repositório. Este fluxo padrão envia o evento check_suite (com a ação requested) para todos os aplicativos GitHub com a permissão checks:write. Quando o seu aplicativo do GitHub receber o evento check_suite, ele poderá criar uma nova verificação executa o último commit. O GitHub adiciona automaticamente novas execuções de verificação ao conjunto de verificações com base no repositório e no SHA da execução de verificação.

Se você não desejar usar o fluxo automático padrão, você poderá controlar quando criar conjuntos de verificação. Para alterar as configurações padrão para a criação de conjuntos de verificação, use o ponto de extremidade Atualizar as preferências do repositório para conjuntos de verificação. Todas as alterações nas configurações de fluxo automático são registradas no log de auditoria do repositório. Se você tiver desabilitado o fluxo automático, você poderá criar um suíte de verificação usando o ponto de extremidade Criar uma conjunto de verificações. Você deve continuar usando o ponto de extremidade Criar uma execução de verificação para fornecer feedback sobre um commit.

A permissão de escrita para a API de verificação só está disponível para aplicativos GitHub. Aplicativos OAuth e usuários autenticados podem ver as execuções de verificação e conjunto de verificações, mas eles não são capazes de criá-los. Se você não estiver criando um aplicativo no GitHub, talvez você esteja interessado no Statuses API.

Para usar a API de conjuntos de verificações, o aplicativo GitHub deve ter a permissão de checks:write e também poderá assinar o webhook de check_suite.

Para obter informações sobre como efetuar a autenticação como um aplicativo GitHub, consulte "Opções de autenticação para aplicativos GitHub".

Sobre as execuções de verificação

Uma execução de verificação é um teste individual que faz parte de um conjunto de verificações. Cada execução inclui um status e uma conclusão.

Fluxo de trabalho das execuções de verificação

Assim que você receber o webhook de check_suite, você poderá criar a execução de verificação, mesmo que a verificação não esteja completa. Você pode atualizar o status da execução de verificação, pois ele é completado com os valores de queued, in_progress ou completed, e você poderá atualizar a saída de `` conforme mais informações forem disponibilizadas. Uma verificação de execução pode conter registros de hora, um link para obter mais informações sobre o seu site externo, anotações detalhadas para linhas específicas de código, e informações sobre a análise realizada.

Anotação da execução de verificação

Uma verificação também pode ser reexecutada manualmente na interface do usuário do GitHub. Consulte "Sobre verificações de statuspara obter mais informações. Quando isso ocorre, o aplicativo GitHub que criou a execução de verificação receberá o webhook check_run, solicitando uma nova verificação de execução. Se você criar uma execução de verificação sem criar um conjunto de verificações, o GitHub criará automaticamente o conjunto de verificações para você.

A permissão de escrita para a API de verificação só está disponível para aplicativos GitHub. Aplicativos OAuth e usuários autenticados podem ver as execuções de verificação e conjunto de verificações, mas eles não são capazes de criá-los. Se você não estiver criando um aplicativo no GitHub, talvez você esteja interessado no Statuses API.

Para usar a API de execução de verificações, o aplicativo GitHub deve ter a permissão checks:write e também deve poder assinar o webhook de check_run.

Execuções de verificação e ações solicitadas

Ao configurar uma verificação de execução com as ações solicitadas (não confundir com GitHub Actions), você pode exibir um botão na exibição de pull request no GitHub que permite que pessoas solicitem o seu aplicativo GitHub para executar tarefas adicionais.

Por exemplo, um aplicativo de linting de código poderia usar ações solicitadas para exibir um botão em um pull request para corrigir automaticamente erros de sintaxe detectados.

Para criar um botão que possa solicitar ações adicionais do seu aplicativo, use as ações objeto ao criar uma execução de verificação. Por exemplo, o objeto de ações abaixo exibe um botão em um pull request com a etiqueta "Corrija isso". O botão é exibido após a conclusão da execução da verificação.

"actions": [{
   "label": "Fix this",
   "description": "Let us fix that for you",
   "identifier": "fix_errors"
 }]

Botão de ação solicitada de execução de verificação

Quando um usuário clica no botão, GitHub envia o webhook check_run.requested_action para seu aplicativo. Quando o seu aplicativo recebe um evento de webhook de check_run.requested_action, ele pode procurar a chave requested_action.identifier na carga do webhook para determinar qual botão se clicou para executar a tarefa solicitada.

Para obter um exemplo detalhado de como configurar as ações solicitadas com a API de verificações, consulte "Criar testes de CI com a API de verificações."