cronの設定ファイルをバージョン管理する

通常、cronの設定は次のような感じで、適当なテキストエディタが開いて保存して終了するとcrondに反映される。

$ crontab -e

この仕組みが詳しくはわかってないが、/tmp以下にテンポラリでファイルを作って、保存時にcrondに反映しているようだ。よって、自分が設定した設定ファイルの在処がわかりにくく、バージョン管理することが容易でない。
解決策はこんな感じ。

  • cron.txtのような適当なファイルを作り、cron.txtの中に設定を書く。
  • crondへの反映は次のように行う。
$ crontab cron.txt
  • cron.txtをgit等で管理する。

また、crontab cron.txtの際にcron.txtの内容に誤りがあると、警告がでるので便利です。