YAML 의 cron
on: schedule + cron 표현식 = 반복 일정에 workflow 실행. UTC, 5-필드 cron, repo 에 활동 있어야 함 (60일 commit 없음 = scheduled workflow 일시정지).
흔한 패턴
- Nightly full test suite — 길고 비싼 matrix 를 매일 밤 — PR 은 smoke subset 만 보게.
- Dependency 업데이트 — Dependabot 이 해주지만, 일정에
npm outdated,pip-audit등도 돌릴 수 있어. - 보안 스캔 — 주간 CodeQL, 월간 trivy.
- Stale issue / PR 정리 —
actions/stale. - Health check — prod URL 주기적 curl + 실패 시 Slack 알림.
주의
- 항상 UTC.
- 피크 부하 시 GitHub 가 scheduled run 지연 가능 — 밀리초 정확도 의존 금지.
- 같은 workflow 에
workflow_dispatch짝 — 디버깅 위해 수동 실행 가능.