Twitterとか勉強会でVagrantfileやcookbooksはどう管理すべきか?って話題がたまに上がるので、自分の考えをまとめてみる。
自分の意見は「Vagrantfileもcookbooksもアプリと一緒に管理する」
理由をつらつらと
「すぐ使えるようにしたい」
リポジトリからcloneしてすぐvagrant upしてすぐ動作させられるのが理想だと思っているので、 仮に別のリポジトリやブランチに置いた場合、開発者間での環境を統一が面倒になる。その為にはアプリと同じリポジトリに必要だなぁと。
VagrantfileはGemfileと一緒だと思ってるのでそう考えると同じリポジトリだよなぁと。
cookbooksに関して
ではcookbooksも同じリポジトリで管理するか?と言われると…
出来ればcoookbooksは再利用可能にしたい。なので同一リポジトリでは扱いづらくなるよなってことで、代替案としてはcookbooks自体は別リポジトリ等で管理してアプリケーションリポジトリにはBerksfile+Bersfile.lockを置くのがいいんじゃないかなと。