Monitoriza un workflow programado de GitHub Actions
Los workflows programados fallan en silencio cuando Actions está desactivado, los secrets caducan o un paso da error. Un paso final con curl demuestra que el job terminó con éxito.
Antes de empezar
Crea un monitor con la frecuencia real de tu workflow y copia su URL desde el panel. Su token es secreto: no lo publiques.
Configuración
Copia la URL del monitor en un secret
Crea un monitor que coincida con tu calendario (por ejemplo 0 6 * * * → diario). En el repo: Settings → Secrets and variables → Actions → New repository secret llamado VERIFAGENT_URL con la URL de ping completa.
https://verifagent.com/api/ping/your-ping-tokenAñade un paso final de heartbeat
Coloca curl después de los pasos de trabajo real para que un build fallido nunca haga ping. Usa el secret — nunca hagas commit del token.
name: Nightly job
on:
schedule:
- cron: "0 6 * * *"
workflow_dispatch:
jobs:
run:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Ejecutar el trabajo real
run: ./scripts/nightly.sh
- name: Ping Verifagent
run: curl -fsS "${{ secrets.VERIFAGENT_URL }}"Opcional: fallar el job si el ping falla
curl -fsS ya falla el paso con respuestas distintas de 2xx. Mantenlo al final para llegar solo si los pasos anteriores tuvieron éxito.
- name: Ping Verifagent
run: curl -fsS "${{ secrets.VERIFAGENT_URL }}"Ejecuta workflow_dispatch una vez
Desde la pestaña Actions, ejecuta el workflow manualmente. El paso de ping debería mostrar 200 y {"ok":true}. Confirma Up en Verifagent.
{"ok":true}Rutas disponibles
La URL base basta para un heartbeat. Las variantes enriquecen el historial si tu plataforma tiene varias ramas.
GET https://YOUR_PING_URLPOST https://YOUR_PING_URL/successPOST https://YOUR_PING_URL/fail?msg=ErrorVerificar
Tras una ejecución en verde, el monitor está Up. Desactiva el workflow o falla un paso temprano: no debería llegar ningún ping y Verifagent abrirá un incidente tras periodo + margen.
200 {"ok":true}. El monitor pasa de Pending a Up.