Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteSí, puedes automatizar un nuevo intento de un job de GitHub Actions después de una interrupción de una instancia Spot, pero GitHub no documenta una función nativa que detecte esa causa y lo reintente automáticamente. La ruta práctica es combinar una forma fiable de identificar la interrupción con la API REST de GitHub para solicitar otro intento, y limitar los reintentos para que un fallo de pruebas o configuración no genere un ciclo.
Qué puede volver a ejecutar GitHub
GitHub Actions permite volver a ejecutar un workflow completo, todos sus jobs fallidos o un job específico desde la interfaz. Con GitHub CLI puedes volver a ejecutar un workflow con gh run rerun RUN_ID, o solo sus jobs fallidos con gh run rerun RUN_ID --failed. La documentación explica estas opciones en Re-running workflows and jobs.
As an Amazon Associate I earn from qualifying purchases.
La API REST también ofrece operaciones para repetir una ejecución o los jobs fallidos. Si una solicitud de repetición se acepta, la API devuelve HTTP 201. Para el endpoint de jobs fallidos, un personal access token de granularidad fina necesita permiso de escritura de Actions en el repositorio; un token clásico requiere el scope repo. Consulta REST API endpoints for workflow runs para los endpoints y requisitos vigentes.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Un rerun no es una ejecución completamente nueva: usa el GITHUB_SHA y GITHUB_REF del evento original, así como los privilegios de la persona que inició el workflow originalmente. Solo está disponible durante los 30 días posteriores a la ejecución inicial y cada workflow run admite como máximo 50 reruns, sumando repeticiones completas y parciales. Estos límites hacen importante registrar cuántos intentos se han solicitado.
#1 Best Overall
Por qué un job de Spot puede detenerse sin un rerun automático
Una instancia Spot es capacidad EC2 sobrante que AWS puede recuperar. Ante una interrupción, AWS puede terminar, detener o hibernar la instancia; terminar es el comportamiento predeterminado. Entre las causas posibles están la necesidad de capacidad, el precio y restricciones de la solicitud. La instancia que ejecuta el runner puede desaparecer mientras el job está en curso, pero eso por sí solo no le dice a GitHub por qué falló el job. AWS detalla los comportamientos en Behavior of Spot Instance interruptions.
AWS suele emitir una notificación de interrupción dos minutos antes de detener o terminar una instancia. La notificación está disponible mediante EventBridge y en los metadatos de la instancia; AWS recomienda consultarla cada cinco segundos. La entrega es best effort, y la hibernación empieza inmediatamente, sin esos dos minutos de aviso. Por tanto, el aviso puede ayudar al runner a cerrar o conservar trabajo, pero no debe ser la única vía de recuperación. Consulta Spot Instance interruption notices.
Diseña la automatización como un controlador, no como un reintento a ciegas
La API proporciona la acción de rerun; no proporciona, según la documentación consultada, un disparador integrado que relacione una reclamación Spot de AWS con el job fallido de GitHub. Esa clasificación y la decisión de repetir son responsabilidad de tu implementación. Un flujo robusto separa tres tareas:
- Detectar la interrupción en AWS. Cuando sea posible, captura el evento de interrupción o el aviso del runner y registra de forma durable qué runner y job estaban asociados. No dependas exclusivamente del aviso, porque AWS lo entrega best effort y no lo envía con antelación para hibernación.
- Relacionar el evento con una ejecución de GitHub. Conserva identificadores de repositorio, workflow run y job junto al identificador del runner. Si solo recibes un estado fallido de GitHub, no lo trates automáticamente como una interrupción Spot: también puede deberse a pruebas, dependencias, configuración u otros errores.
- Solicitar un rerun acotado. Llama al endpoint apropiado de la API para jobs fallidos o para la ejecución completa, según el alcance que necesites. Guarda el resultado de la solicitud y cuenta los intentos para no superar el máximo de 50 por workflow run. Impón un límite operativo menor si se ajusta mejor a tu presupuesto y política de CI.
- Evitar que el controlador se reactive a sí mismo. Distingue el fallo inicial de los reruns, marca cada intento ya procesado y detén la cadena ante un nuevo fallo que no tenga evidencia de interrupción. Usa permisos mínimos para el token y protege sus credenciales como cualquier otro secreto de automatización.
La solicitud de rerun ejecuta el código y el contexto de seguridad asociados con el run original: conserva SHA, ref y privilegios del actor original. Revisa ese comportamiento antes de otorgar al controlador capacidad de escritura en Actions; no asumas que un rerun equivale a una ejecución nueva con permisos recalculados para otro actor.
Elige el método según el tipo de incidente
| Método | Cuándo encaja | Qué no resuelve por sí solo |
|---|---|---|
| Interfaz de GitHub | Incidentes ocasionales en los que una persona puede revisar el run y escoger qué repetir. | Requiere intervención y no clasifica la causa automáticamente. |
| GitHub CLI | Operación explícita desde un entorno con acceso a GitHub; permite repetir un run completo o solo sus jobs fallidos. | El comando no determina si el fallo fue provocado por Spot. |
| API REST y controlador propio | Flujos repetibles donde tu infraestructura ya puede relacionar el evento de AWS con el job y aplicar límites. | Debes implementar la correlación, la clasificación, el control de intentos y la autorización. |
| Manejo en el runner ante el aviso de AWS | Dar oportunidad a un cierre ordenado o a conservar estado antes de una detención o terminación. | La notificación no está garantizada y la hibernación empieza sin la ventana de dos minutos. |
Si el objetivo es continuar el trabajo perdido, evalúa además qué estado puede recuperarse o reconstruirse después de que desaparezca la instancia. Un rerun repite el trabajo; no restaura por sí mismo procesos ni estado local del runner que ya se perdió.
Prueba cada parte de la cadena
AWS documenta una forma de iniciar una interrupción Spot para probar la respuesta de una aplicación: primero envía una recomendación de rebalanceo y una notificación de interrupción, y después de dos minutos interrumpe la instancia. Si la solicitud está configurada para hibernar, la hibernación empieza inmediatamente. El mecanismo no está soportado en Asia Pacific (Jakarta), Asia Pacific (Osaka), China (Beijing), China (Ningxia) ni Middle East (UAE); comprueba la guía vigente antes de probar en una región concreta. Los pasos están en Initiate a Spot Instance interruption.
Rank #4
- Verifica por separado que el runner reciba y procese el aviso cuando esté disponible.
- Confirma qué estado y registros quedan cuando la instancia se detiene, termina o hiberna.
- Comprueba que la señal de interrupción pueda asociarse al run y job correctos.
- Ensaya la llamada a la API y valida el resultado esperado, los permisos y el contador de reruns.
- Provoca también un fallo ordinario de prueba o configuración y confirma que no active la ruta de reintento por Spot.
La prueba de AWS cubre el comportamiento de interrupción de la instancia; no demuestra por sí sola que la correlación con GitHub ni la solicitud de rerun estén correctamente automatizadas.
Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteLa decisión práctica
Para interrupciones infrecuentes, revisar el run y repetir el job manualmente suele ser lo más sencillo. Si las interrupciones justifican automatización, trata el evento Spot como evidencia que debe correlacionarse con el job, usa la API de GitHub solo después de esa verificación y establece límites de reintento, permisos y registros antes de desplegar el controlador. AWS recomienda diseñar las aplicaciones para tolerar fallos; en un runner de CI eso significa manejar el aviso cuando llegue y poder reconstruir o repetir el trabajo cuando no llegue.
Quick Recap
Best Value
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




