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.
Configurazione
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-tokenAggiungi 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 }}"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 }}"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}Route disponibili
L'URL base basta per un heartbeat. Le varianti arricchiscono la cronologia se la piattaforma ha più rami.
GET https://YOUR_PING_URLPOST https://YOUR_PING_URL/successPOST https://YOUR_PING_URL/fail?msg=ErrorVerifica
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.
200 {"ok":true}. Il monitor passa da In attesa a Up.