はじめに
最近、HITOTSUではE2EテストをGithubActionsで自動実行させるということを行いました。
GithubActionsでは、cron式を書くことでスケジュール実行ができます。
スケジュール実行についてどのような指定方法があるか、備忘録も兼ねていくつか紹介できればと思います。
cron構文
分、時、日、月、曜日の順で実行スケジュールを指定するフォーマット
* * * * *
分 時 日 月 曜日
〇〇分おきに実行する
15分おきに実行したい場合
schedule:
- cron: "*/15 * * * *"
時間指定して実行する
毎日12時に実行したい場合
日本標準時(JST)はUTCより9時間進んでいるため-9時間した値を設定する。
schedule:
- cron: "0 3 * * *”
平日のみ実行する
0から6を指定できる。0が日曜日、6が土曜日。
schedule:
- cron: "0 0 * * 1-5”
注意点
- 5分間隔より短い間隔でワークフローを定期実行することはできない
- 指定した時間ピッタリに動くことはない(大体数分遅れて実行されている印象)
- 定期実行は、デフォルトブランチ以外のブランチではできない