基本的な設定

on:
  schedule:
    - cron: '0 9 * * *'    # 毎日9時(UTC)

よく使うcron設定例

0 9 * * *       # 毎日9時(UTC)
0 0 * * 1       # 毎週月曜日0時
0 9 1 * *       # 毎月1日9時
*/30 * * * *    # 30分ごと

JSTに変換する

GitHubのcronはUTCなので9時間の差がある。

JSTの9時 = UTCの0時 → cron: '0 0 * * *'

手動実行も可能にする

on:
  schedule:
    - cron: '0 0 * * *'
  workflow_dispatch:

ハマったポイント

  • cronはUTCなのでJSTと9時間ずれる
  • リポジトリにアクティビティがないと無効化されることがある

関連記事