Skip to main content

Esta versão do GitHub Enterprise Server será descontinuada em 2024-06-29. Nenhum lançamento de patch será feito, mesmo para questões críticas de segurança. Para obter melhor desempenho, segurança aprimorada e novos recursos, atualize para a última versão do GitHub Enterprise Server. Para obter ajuda com a atualização, entre em contato com o suporte do GitHub Enterprise.

Reexecutando fluxos de trabalho e trabalhos

Você pode executar novamente um fluxo de trabalho, todos os trabalhos que falharam na execução de um fluxo de trabalho ou trabalhos específicos em uma execução de fluxo de trabalho até 30 dias após a execução inicial.

Quem pode usar esse recurso?

People with write permissions to a repository can re-run workflows in the repository.

Tool navigation

Observação: no momento, não há suporte para os executores hospedados no GitHub no GitHub Enterprise Server. Você pode ver mais informações sobre o suporte futuro planejado no GitHub public roadmap.

Sobre a reexecução de fluxos de trabalho e trabalhos

A nova execução de um fluxo de trabalho ou de trabalhos em um fluxo de trabalho usa o mesmo GITHUB_SHA (SHA do commit) e a mesma GITHUB_REF (referência do Git) do evento original que disparou a execução de fluxo de trabalho. O fluxo de trabalho usará os privilégios do ator que inicialmente disparou o fluxo de trabalho, não os privilégios do ator que iniciou a execução novamente. Você pode executar novamente um fluxo de trabalho ou trabalhos em um fluxo de trabalho até 30 dias após a execução inicial. Você não poderá executar novamente trabalhos em um fluxo de trabalho depois que os logs ultrapassarem os limites de retenção. Para obter mais informações, confira "Limites de uso, cobrança e administração". Ao executar novamente um fluxo de trabalho ou os trabalhos em um fluxo de trabalho, você pode habilitar o log de depuração para a nova execução. Isso habilitará o log de diagnóstico do executor e o log de depuração de etapas para a execução nova. Para obter mais informações sobre o log de depuração, confira "Habilitando o log de depuração".

Reexecutar todos os trabalhos em um fluxo de trabalho

  1. No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.

  2. No nome do repositório, clique em Ações.

    Captura de tela das guias do repositório "github/docs". A guia "Ações" está realçada com um contorno laranja.

  3. Na barra lateral esquerda, clique no fluxo de trabalho que deseja ver.

    Captura de tela da barra lateral esquerda da guia "Ações". Um fluxo de trabalho, "CodeQL", é descrito em laranja escuro.

  4. Na lista de execuções de fluxo de trabalho, clique no nome da execução para ver o resumo da execução do fluxo de trabalho.

  5. No canto superior direito do fluxo de trabalho, execute novamente os trabalhos.

    • Se algum trabalho falhou, selecione o menu suspenso Executar novamente trabalhos do e clique em Executar novamente todos os trabalhos.

    • Se nenhum trabalho falhar, clique em Executar novamente todos os trabalhos.

  6. Opcionalmente, para habilitar o log de diagnóstico do executor e o log de depuração de etapas para a nova execução, selecione Habilitar o log de depuração.

  7. Clique em Executar trabalhos novamente.

Para saber mais sobre GitHub CLI, confira "Sobre o a CLI do GitHub".

Para executar novamente uma execução de fluxo de trabalho com falha, use o subcomando run rerun. Substitua run-id pela ID da execução com falha que deseja executar novamente. Se você não especificar uma run-id, a GitHub CLI retornará um menu interativo para você escolher uma execução recente com falha.

gh run rerun RUN_ID

Para habilitar o log de diagnóstico do executor e o log de depuração de etapas para a nova execução, use o sinalizador --debug.

gh run rerun RUN_ID --debug

Para ver o progresso da execução do fluxo de trabalho, use o subcomando run watch e selecione a execução na lista interativa.

gh run watch

Reexecutar trabalhos que falharam em um fluxo de trabalho

Se qualquer trabalho na execução de um fluxo de trabalho falhar, você poderá executar novamente apenas os trabalhos que falharam. Ao reexecutar trabalhos que falharam em fluxo de trabalho, uma nova execução do fluxo de trabalho será iniciada para todos os trabalhos que falharam e seus dependentes. Todas as saídas para quaisquer trabalhos bem-sucedidos na execução anterior do fluxo de trabalho serão usadas para a nova execução. Todos os artefatos criados na execução inicial estarão disponíveis na reexecução. Todas as regras de proteção de implantação aprovadas na execução anterior serão automaticamente aprovadas na reexecução.

  1. No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.

  2. No nome do repositório, clique em Ações.

    Captura de tela das guias do repositório "github/docs". A guia "Ações" está realçada com um contorno laranja.

  3. Na barra lateral esquerda, clique no fluxo de trabalho que deseja ver.

    Captura de tela da barra lateral esquerda da guia "Ações". Um fluxo de trabalho, "CodeQL", é descrito em laranja escuro.

  4. Na lista de execuções de fluxo de trabalho, clique no nome da execução para ver o resumo da execução do fluxo de trabalho.

  5. No canto superior direito do fluxo de trabalho, selecione o menu suspenso Executar novamente os trabalhos do e clique em Falha ao executar novamente os trabalhos.

  6. Opcionalmente, para habilitar o log de diagnóstico do executor e o log de depuração de etapas para a nova execução, selecione Habilitar o log de depuração.

  7. Clique em Executar trabalhos novamente.

Para executar os trabalhos com falha novamente em uma execução de fluxo de trabalho, use o subcomando run rerun com o sinalizador --failed. Substitua run-id pela ID da execução para a qual deseja executar novamente os trabalhos com falha. Se você não especificar uma run-id, a GitHub CLI retornará um menu interativo para você escolher uma execução recente com falha.

gh run rerun RUN_ID --failed

Para habilitar o log de diagnóstico do executor e o log de depuração de etapas para a nova execução, use o sinalizador --debug.

gh run rerun RUN_ID --failed --debug

Reexecutando um trabalho específico em um fluxo de trabalho

Ao executar novamente um trabalho específico em um fluxo de trabalho, uma nova execução do fluxo de trabalho será iniciada para o trabalho e para quaisquer dependentes. Todas as saídas para outros trabalhos na execução anterior do fluxo de trabalho serão usadas para a nova execução. Todos os artefatos criados na execução inicial estarão disponíveis na reexecução. Todas as regras de proteção de implantação aprovadas na execução anterior serão automaticamente aprovadas na reexecução.

  1. No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.

  2. No nome do repositório, clique em Ações.

    Captura de tela das guias do repositório "github/docs". A guia "Ações" está realçada com um contorno laranja.

  3. Na barra lateral esquerda, clique no fluxo de trabalho que deseja ver.

    Captura de tela da barra lateral esquerda da guia "Ações". Um fluxo de trabalho, "CodeQL", é descrito em laranja escuro.

  4. Na lista de execuções de fluxo de trabalho, clique no nome da execução para ver o resumo da execução do fluxo de trabalho.

  5. Na seção "Trabalhos" da barra lateral esquerda, ao lado do trabalho que você deseja executar novamente, clique em .

  6. Opcionalmente, para habilitar o log de diagnóstico do executor e o log de depuração de etapas para a nova execução, selecione Habilitar o log de depuração.

  7. Clique em Executar trabalhos novamente.

Para executar novamente um trabalho específico em uma execução de fluxo de trabalho, use o subcomando run rerun com o sinalizador --job. Substitua job-id pela ID do trabalho que deseja executar novamente.

gh run rerun --job JOB_ID

Para habilitar o log de diagnóstico do executor e o log de depuração de etapas para a nova execução, use o sinalizador --debug.

gh run rerun --job JOB_ID --debug

Executar novamente fluxos de trabalho e trabalhos com fluxos de trabalho reutilizáveis

Fluxos de trabalho reutilizáveis de repositórios públicos podem ser referenciados usando um SHA, uma tag de lançamento ou um nome de branch. Para obter mais informações, confira "Reutilizar fluxos de trabalho".

Quando você executa novamente um fluxo de trabalho que usa um fluxo de trabalho reutilizável e a referência não é um SHA, há alguns comportamentos a serem observados:

  • A reexecução de todos os trabalhos em um fluxo de trabalho usará o fluxo de trabalho reutilizável da referência especificada. Para obter mais informações sobre como executar novamente todos os trabalhos em um fluxo de trabalho, confira "Reexecutando fluxos de trabalho e trabalhos".
  • Reexecutar trabalhos com falha ou um trabalho específico em um fluxo usará o fluxo de trabalho reutilizável do mesmo SHA de commit da primeira tentativa. Para obter mais informações sobre como executar novamente trabalhos com falha em um fluxo de trabalho, confira "Reexecutando fluxos de trabalho e trabalhos". Para obter mais informações sobre como executar um trabalho específico em um fluxo de trabalho, confira "Reexecutando fluxos de trabalho e trabalhos".

Revisando execuções de workflows anteriores

Você pode ver os resultados de suas tentativas anteriores de executar um fluxo de trabalho. Você também pode visualizar execuções de workflows anteriores do fluxo de trabalho usando a API. Para obter mais informações, confira "Pontos de extremidade da API REST para execuções de fluxo de trabalho".

  1. No sua instância do GitHub Enterprise Server, navegue até a página principal do repositório.

  2. No nome do repositório, clique em Ações.

    Captura de tela das guias do repositório "github/docs". A guia "Ações" está realçada com um contorno laranja.

  3. Na barra lateral esquerda, clique no fluxo de trabalho que deseja ver.

    Captura de tela da barra lateral esquerda da guia "Ações". Um fluxo de trabalho, "CodeQL", é descrito em laranja escuro.

  4. Na lista de execuções de fluxo de trabalho, clique no nome da execução para ver o resumo da execução do fluxo de trabalho.

  5. À direita do nome da execução, selecione o menu suspenso Mais recente e clique em uma tentativa de execução anterior.