まあ前回の続き
http://qiita.com/manabukk/items/6d047097a945250138d0
#DynoプランでのSleep問題の解決
HerokuでHubotを指定の時間に寝かせる
http://sota1235.hatenablog.com/entry/2015/06/10/130000
を参考にした。そのまんま。
#時刻を取得しての定期的な発言を実装する
Heroku+HubotでCodeDeployのデプロイをSlackから実行する
http://qiita.com/toshihirock/items/7598ab59b2c687b77cb6
を参考にする。
GUIからRedis To Goのnanoプランを追加。
heroku apps:info
で確認したらちゃんと追加されてた。
上記でWebURLとなっている部分を環境変数HUBOT_HEROKU_KEEPALIVE_URL
で設定する。
$heroku config:set HUBOT_HEROKU_KEEPALIVE_URL=https://still-springs-3531.herokuapp.com/
herokuのTZを東京にする。
$ heroku config:add TZ=Asia/Tokyo
"hubot-shipit",
"hubot-cron"
"hubot-slack": "^3.3.0",
"hubot-cron": ">=0.1.0"
を追記。
npm install
でインストールが行われる。
$ ./bin/hubot -a shell -n manabukk $ manabukk new job 0 45 22 * * * "Good Evening!"
を実行してみると、ちゃんと22時45分にGood Evening!
って言ってくれた。
これをadd,commit,pushする。
#問題
やはりHerokuがSleepしてしまう。
とりま起こしてからslackからnew job 0 45 22 * * * "Hi!"
と実行すると受け付けてもらえた。
Heroku 上で動く Hubot をうまく休ませる
http://qiita.com/misopeso/items/8cde2ecbb82e7bfc01b4
HubotをHerokuのFree dynoに対応させる
http://blog.spacemarket.com/code/hubot-on-heroku-free-dyno/
を参考にWAKEUPとSLEEPの環境変数を設定してみる。最悪上の参考ソースをまるまるコピーしてみようか。
あとは、
HerokuのFreeプランでアプリを最大限起動しっぱなしにする方法(1日18時間まで)
https://iimuz.github.io/2015/11/11/hubotKeepalive.html
というのもある。
(11/25)
HerokuのFreeプランでアプリを最大限起動しっぱなしにする方法(1日18時間まで)
https://iimuz.github.io/2015/11/11/hubotKeepalive.html
を完全にまねてみた。
#解決!?
Can't set night owl schedule
https://github.com/hubot-scripts/hubot-heroku-keepalive/issues/17
ここにあるように、sleeptimeは朝2時なら26:00と表記する必要があるぽい
これでしばらくは満足に動作した。
次回