Documentation

GitHub Actions

GitHub Actions schedules can run late or not at all. Watch them.

The GitHub Actions scheduler gives no guarantees: under load a run slips by tens of minutes, and in an inactive repository the schedule is disabled entirely. Notifications cover failed runs — but not runs that never happened.

yaml
name: nightly

on:
  schedule:
    - cron: "0 3 * * *"
  workflow_dispatch:

jobs:
  run:
    runs-on: ubuntu-latest
    steps:
      - run: curl -fsS -m 10 --retry 3 "${{ secrets.TICKWATCH_PING }}/start"

      - uses: actions/checkout@v4
      - run: ./scripts/nightly.sh

      - name: Отчёт об успехе
        if: success()
        run: curl -fsS -m 10 --retry 3 "${{ secrets.TICKWATCH_PING }}"

      - name: Отчёт о падении
        if: failure()
        run: |
          curl -fsS -m 10 --retry 3 \
            --data-raw "workflow ${{ github.workflow }}, run ${{ github.run_id }}" \
            "${{ secrets.TICKWATCH_PING }}/fail"
GitHub Actions · Tickwatch