Skip to main content

Re-running workflows and jobs

You can re-run a workflow run, all failed jobs in a workflow run, or specific jobs in a workflow run up to 30 days after its initial run.

¿Quién puede utilizar esta característica?

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

Tool navigation

Nota:

Actualmente los ejecutores hospedados por GitHub no se admiten en GitHub Enterprise Server. Puede ver más información sobre la compatibilidad futura planeada en GitHub public roadmap.

About re-running workflows and jobs

Re-running a workflow or jobs in a workflow uses the same GITHUB_SHA (commit SHA) and GITHUB_REF (Git ref) of the original event that triggered the workflow run. The workflow will use the privileges of the actor who initially triggered the workflow, not the privileges of the actor who initiated the re-run. You can re-run a workflow or jobs in a workflow for up to 30 days after the initial run. You cannot re-run jobs in a workflow once its logs have passed their retention limits. For more information, see Usage limits, billing, and administration. When you re-run a workflow or jobs in a workflow, you can enable debug logging for the re-run. This will enable runner diagnostic logging and step debug logging for the re-run. For more information about debug logging, see Enabling debug logging

Re-running all the jobs in a workflow

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Acciones.

    Captura de pantalla de las pestañas del repositorio "github/docs". La pestaña "Proyectos" aparece resaltada con un contorno naranja.

  3. En la barra lateral izquierda, da clic en el flujo de trabajo que quieras ver.

    Captura de pantalla de la barra lateral izquierda de la pestaña "Acciones". Un flujo de trabajo, "CodeQL", se destaca en naranja oscuro.

  4. En la lista de ejecuciones de flujo de trabajo, haz clic en el nombre de la ejecución para ver el resumen de la ejecución de flujo de trabajo.

  5. In the upper-right corner of the workflow, re-run jobs.

    • If any jobs failed, select the Re-run jobs dropdown menu and click Re-run all jobs.

    • If no jobs failed, click Re-run all jobs.

  6. También puedes seleccionar Habilitar el registro de depuración para habilitar el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la ejecución nueva.

  7. Haz clic en Volver a ejecutar trabajos.

Nota:

Para más información sobre GitHub CLI, consulta Acerca del CLI de GitHub.

To re-run a failed workflow run, use the run rerun subcommand. Replace run-id with the ID of the failed run that you want to re-run. If you don't specify a run-id, GitHub CLI returns an interactive menu for you to choose a recent failed run.

gh run rerun RUN_ID

Para habilitar el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la nueva ejecución, usa la marca --debug.

gh run rerun RUN_ID --debug

To view the progress of the workflow run, use the run watch subcommand and select the run from the interactive list.

gh run watch

Re-running failed jobs in a workflow

If any jobs in a workflow run failed, you can re-run just the jobs that failed. When you re-run failed jobs in a workflow, a new workflow run will start for all failed jobs and their dependents. Any outputs for any successful jobs in the previous workflow run will be used for the re-run. Any artifacts that were created in the initial run will be available in the re-run. Any deployment protection rules that passed in the previous run will automatically pass in the re-run.

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Acciones.

    Captura de pantalla de las pestañas del repositorio "github/docs". La pestaña "Proyectos" aparece resaltada con un contorno naranja.

  3. En la barra lateral izquierda, da clic en el flujo de trabajo que quieras ver.

    Captura de pantalla de la barra lateral izquierda de la pestaña "Acciones". Un flujo de trabajo, "CodeQL", se destaca en naranja oscuro.

  4. En la lista de ejecuciones de flujo de trabajo, haz clic en el nombre de la ejecución para ver el resumen de la ejecución de flujo de trabajo.

  5. In the upper-right corner of the workflow, select the Re-run jobs dropdown menu, and click Re-run failed jobs.

  6. También puedes seleccionar Habilitar el registro de depuración para habilitar el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la ejecución nueva.

  7. Haz clic en Volver a ejecutar trabajos.

To re-run failed jobs in a workflow run, use the run rerun subcommand with the --failed flag. Replace run-id with the ID of the run for which you want to re-run failed jobs. If you don't specify a run-id, GitHub CLI returns an interactive menu for you to choose a recent failed run.

gh run rerun RUN_ID --failed

Para habilitar el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la nueva ejecución, usa la marca --debug.

gh run rerun RUN_ID --failed --debug

Re-running a specific job in a workflow

When you re-run a specific job in a workflow, a new workflow run will start for the job and any dependents. Any outputs for any other jobs in the previous workflow run will be used for the re-run. Any artifacts that were created in the initial run will be available in the re-run. Any deployment protection rules that passed in the previous run will automatically pass in the re-run.

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Acciones.

    Captura de pantalla de las pestañas del repositorio "github/docs". La pestaña "Proyectos" aparece resaltada con un contorno naranja.

  3. En la barra lateral izquierda, da clic en el flujo de trabajo que quieras ver.

    Captura de pantalla de la barra lateral izquierda de la pestaña "Acciones". Un flujo de trabajo, "CodeQL", se destaca en naranja oscuro.

  4. En la lista de ejecuciones de flujo de trabajo, haz clic en el nombre de la ejecución para ver el resumen de la ejecución de flujo de trabajo.

  5. Under the "Jobs" section of the left sidebar, next to the job that you want to re-run, click .

  6. También puedes seleccionar Habilitar el registro de depuración para habilitar el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la ejecución nueva.

  7. Haz clic en Volver a ejecutar trabajos.

To re-run a specific job in a workflow run, use the run rerun subcommand with the --job flag. Replace job-id with the ID of the job that you want to re-run.

gh run rerun --job JOB_ID

Para habilitar el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la nueva ejecución, usa la marca --debug.

gh run rerun --job JOB_ID --debug

Re-running workflows and jobs with reusable workflows

Se puede hacer referencia a flujos de trabajo reutilizables de repositorios públicos mediante SHA, una etiqueta de versión o un nombre de rama. Para más información, consulta Reusing workflows.

Cuando se vuelve a ejecutar un flujo de trabajo que usa un flujo de trabajo reutilizable y la referencia no es SHA, hay algunos comportamientos que se deben tener en cuenta:

  • Al volver a ejecutar todos los trabajos de un flujo de trabajo, se usará el flujo de trabajo reutilizable de la referencia especificada. Para más información sobre cómo volver a ejecutar todos los trabajos de un flujo de trabajo, consulta Re-running workflows and jobs.
  • Volver a ejecutar trabajos con errores o un trabajo específico en un flujo de trabajo usará el flujo de trabajo reutilizable desde el mismo SHA de confirmación del primer intento. Para más información sobre cómo volver a ejecutar todos los trabajos con error de un flujo de trabajo, consulta Re-running workflows and jobs. Para más información sobre cómo volver a ejecutar un trabajo específico de un flujo de trabajo, consulta Re-running workflows and jobs.

Reviewing previous workflow runs

You can view the results from your previous attempts at running a workflow. You can also view previous workflow runs using the API. For more information, see Puntos de conexión de API de REST para ejecuciones de flujo de trabajo.

  1. En GitHub, navegue hasta la página principal del repositorio.

  2. En el nombre del repositorio, haz clic en Acciones.

    Captura de pantalla de las pestañas del repositorio "github/docs". La pestaña "Proyectos" aparece resaltada con un contorno naranja.

  3. En la barra lateral izquierda, da clic en el flujo de trabajo que quieras ver.

    Captura de pantalla de la barra lateral izquierda de la pestaña "Acciones". Un flujo de trabajo, "CodeQL", se destaca en naranja oscuro.

  4. En la lista de ejecuciones de flujo de trabajo, haz clic en el nombre de la ejecución para ver el resumen de la ejecución de flujo de trabajo.

  5. To the right of the run name, select the Latest dropdown menu and click a previous run attempt.