Skip to main content

Volver a ejecutar flujos de trabajo y jobs

Puedes volver a ejecutar una ejecución de flujo de trabajo, todos los trabajos que fallaron en ella o aquellos trabajos específicos en una ejecución de flujo de trabajo en un plazo de 30 días después de su ejecución inicial.

¿Quién puede utilizar esta característica?

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

Tool navigation

Acerca de volver a ejecutar flujos de trabajo y jobs

Al volver a ejecutar un flujo de trabajo o trabajos en un flujo de trabajo se usa el mismo GITHUB_SHA (SHA de confirmación) y GITHUB_REF (referencia de Git) del evento original que ha desencadenado la ejecución de flujo de trabajo. El flujo de trabajo usará los privilegios del actor que ha desencadenado inicialmente el flujo de trabajo, no los del actor que ha iniciado la repetición de la ejecución. Puedes volver a ejecutar un flujo de trabajo o trabajos en un flujo de trabajo durante un máximo de 30 días después de la ejecución inicial. No puedes volver a ejecutar trabajos en un flujo de trabajo una vez que sus registros hayan superado sus límites de retención. Para obtener más información, consulta: "Límites de uso, facturación y administración". Al volver a ejecutar un flujo de trabajo o trabajos en un flujo de trabajo, puedes habilitar el registro de depuración para la nueva ejecución. Esto habilitará el registro de diagnóstico del ejecutor y el registro de depuración de pasos para la nueva ejecución. Para obtener más información sobre el registro de depuración, consulta: "Habilitación del registro de depuración".

Volver a ejecutar todos los jobs en un 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. En la esquina superior derecha del flujo de trabajo, vuelva a ejecutar trabajos.

    • Si se produjo un error en algún trabajo, seleccione el menú desplegable Volver a ejecutar trabajos y haga clic en Volver a ejecutar todos los trabajos.

    • Si no se producen errores en ningún trabajo, haga clic en Volver a ejecutar todos los trabajos.

  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.

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

Para volver a ejecutar una ejecución de flujo de trabajo con errores, use el subcomando run rerun. Reemplace run-id por el id. de la ejecución con errores que quiera volver a ejecutar. Si no especifica run-id, GitHub CLI devuelve un menú interactivo para que elija una ejecución con errores reciente.

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

Para ver el progreso de la ejecución del flujo de trabajo, use el subcomando run watch y seleccione la ejecución en la lista interactiva.

gh run watch

Volver a ejecutar todos los jobs fallidos en un flujo de trabajo

Si cualquier job en una ejecución de flujo de trabajo falla, puedes volver a ejecutar solo los fallidos. Cuando vuelves a ejecutar jobs en un flujo de trabajo, comenzará una ejecución de flujo de trabajo nueva para todos los jobs fallidos y sus dependientes. Cualquier salida de cualquier job exitoso en la ejecución de flujo de trabajo previa se utilizará para volverla a ejecutar. Cualquier artefacto que se haya creado en la ejecución inicial estará disponible en la nueva ejecución. Cualquier regla de protección de implementación superada en la ejecución previa se superará automáticamente en la nueva ejecución.

  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. En la esquina superior derecha del flujo de trabajo, seleccione el menú desplegable Volver a ejecutar trabajos y haga clic en Volver a ejecutar los trabajos erróneos.

  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.

Para volver a ejecutar los trabajos con errores en una ejecución de flujo de trabajo, use el subcomando run rerun con la marca --failed. Reemplace run-id por el identificador de la ejecución para la que quiera volver a ejecutar los trabajos con errores. Si no especifica run-id, GitHub CLI devuelve un menú interactivo para que elija una ejecución con errores reciente.

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

Volver a ejecutar un job específico en un flujo de trabajo

Cuando vuelves a ejecutar un job específico en un flujo de trabajo, una ejecución de flujo de trabajo nueva iniciará para el job y para cualquier dependiente. Cualquier salida de cualquier otro job en la ejecución de flujo de trabajo previa se utilizará para la ejecución nueva. Cualquier artefacto que se haya creado en la ejecución inicial estará disponible en la nueva ejecución. Cualquier regla de protección de implementación superada en la ejecución previa se superará automáticamente en la nueva ejecución.

  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. En la sección "Trabajos" situada en la barra lateral izquierda, junto al trabajo que quieras volver a ejecutar, haz clic en .

  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.

Para volver a ejecutar un trabajo concreto en una ejecución de flujo de trabajo, use el subcomando run rerun con la marca --job. Reemplace job-id por el id. del trabajo que quiera volver a ejecutar.

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

Volver a ejecutar flujos de trabajo y trabajos con flujos de trabajo reutilizables

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 obtener más información, vea «Reutilización de flujos de trabajo».

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: "Volver a ejecutar flujos de trabajo y 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 fallidos de un flujo de trabajo, consulta: "Volver a ejecutar flujos de trabajo y jobs". Para más información sobre cómo volver a ejecutar un trabajo específico de un flujo de trabajo, consulta: "Volver a ejecutar flujos de trabajo y jobs".

Revisar las ejecuciones de flujo de trabajo anteriores

Puedes ver los resultados desde tus intentos anteriores para ejecutar un flujo de trabajo. También puedes ver las ejecuciones de flujo de trabajo anteriores utilizando la API. Para obtener más información, vea «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. A la derecha del nombre de la ejecución, seleccione el menú desplegable Más reciente y haga clic en un intento de ejecución anterior.