heroku schedulerで無料dynoに配置したサービスを定期実行する方法

herokuのアドオンであるheroku schedulerを利用して無料dynoに配置したアプリを定期的に起動するためのメモ。

管理画面上で頻度がHourlyのジョブを作成し、以下のようなスクリプトを登録する。

# 0時と12時に起動
(seq 0 1; seq 12 13) | grep -qw $((10#`date -u "+%H"`)) && curl https://アプリ名.herokuapp.com > /dev/null 2>&1
# 0時に起動
(seq 0 1) | grep -qw $((10#`date -u "+%H"`)) && curl https://アプリ名.herokuapp.com > /dev/null 2>&1

もしくは一日一回の起動で良いのであれば、頻度をDailyに設定し以下のスクリプトを登録すればよい。

curl https://アプリ名.herokuapp.com > /dev/null 2>&1