Guida GitHub Actions

Monitora un workflow GitHub Actions pianificato

I workflow pianificati falliscono silenziosamente quando Actions è disabilitato, i secret scadono o un passaggio va in errore. Un passaggio curl finale dimostra che il job è terminato con successo.

Prima di iniziare

Crea un monitor con la frequenza reale del workflow, poi copia l'URL dalla dashboard. Il token è segreto: non pubblicarlo.

Modulo da usare : workflow · curl. Posizionalo dopo l'ultima azione utile sul percorso di successo.

Configurazione

1

Copia l'URL del monitor in un secret

Crea un monitor che corrisponda alla pianificazione (ad es. 0 6 * * * → giornaliero). Nel repo: Settings → Secrets and variables → Actions → New repository secret chiamato VERIFAGENT_URL con l'URL di ping completo.

https://verifagent.com/api/ping/your-ping-token
2

Aggiungi un passaggio heartbeat finale

Metti curl dopo i passaggi di lavoro reale così una build fallita non pinga mai. Usa il secret — non committare mai il 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: Run the real work run: ./scripts/nightly.sh - name: Ping Verifagent run: curl -fsS "${{ secrets.VERIFAGENT_URL }}"
3

Opzionale: fallisci il job se il ping fallisce

curl -fsS fallisce già il passaggio su risposte non 2xx. Tienilo per ultimo così lo raggiungi solo quando i passaggi precedenti hanno avuto successo.

- name: Ping Verifagent run: curl -fsS "${{ secrets.VERIFAGENT_URL }}"
4

Esegui workflow_dispatch una volta

Dalla scheda Actions, esegui il workflow manualmente. Il passaggio ping dovrebbe mostrare 200 e {"ok":true}. Conferma Up in Verifagent.

{"ok":true}
L'heartbeat deve essere l'ultimo passaggio del percorso di successo. Allinea il periodo atteso Verifagent al cron della pianificazione; imposta la tolleranza sopra il ritardo della coda runner (spesso 10–30 minuti per job giornalieri).

Route disponibili

L'URL base basta per un heartbeat. Le varianti arricchiscono la cronologia se la piattaforma ha più rami.

GET https://YOUR_PING_URL
POST https://YOUR_PING_URL/success
POST https://YOUR_PING_URL/fail?msg=Error

Verifica

Dopo un run verde, il monitor è Up. Disabilita il workflow o fallisci un passaggio iniziale: non dovrebbe arrivare alcun ping e Verifagent aprirà un incidente dopo periodo + tolleranza.

Risposta attesa: 200 {"ok":true}. Il monitor passa da In attesa a Up.