ghaのcronの実行タイミングが一定ではないことについて
概要
GitHub Actions の schedule (cron) トリガーは、指定した時刻ちょうどに実行される保証がなく、遅延が発生することがある。
内容
cron トリガーの仕様
scheduleイベントは UTC ベースの cron 構文で指定する- ただし、指定時刻はあくまで「目安」であり、正確にその時刻に実行されるとは限らない
遅延が発生する理由
- GitHub Actions の共有ランナーは需要に応じてキューイングされるため、負荷が高い時間帯(UTC 0時前後など)は特に遅延しやすい
- 公式ドキュメントでも「スケジュールされたワークフローの実行が遅延する可能性がある」と明記されている
- ピーク時には数分〜数十分の遅延が発生することがある
注意点
- 正確な時刻での実行が必要な場合は、GitHub Actions の cron に依存しない方法を検討すべき(例: 外部スケジューラ、AWS EventBridge + Lambda など)
- cron の最短間隔は 5 分だが、高頻度スケジュールは遅延やスキップが起きやすい
- リポジトリが 60 日間非アクティブだとスケジュールが自動で無効化される
参考資料
なぜこの問題に気づいたか
alcの受託業務において、
メタデータ
- ステータス: 下書き
- タグ: GitHub Actions, CI/CD, cron
- 作成日時: 2026/04/02
- 更新日時: 2026/04/02
