ちょっと調べたのでまとめる。
- vagrant-wrapper
- vagrantはもともとgemだったが今はプラットフォームごとにインストーラが提供されている。
- vagrant-wrapperはそこらへんの橋渡ししてくれるgem。
- gem経由で古いvagrantが入っていても、vagrant-wrapperが入ってると専用インストーラでインストールした新しいvagrantが呼び出せるとかそんな感じ。
- berkshelf
- chefのrecipe依存関係解決してくれるgem。bundler的なもの。
- Berksfileってファイルに依存するレシピを書いてberks installしたらそのレシピをダウンロードしてくれる。
- Gemfile的なもの。
- chefのrecipeのmetadata.rbにも依存関係書くけど、Berksfileにmetadataって記述するとmetadata.rbの依存関係を見てダウンロードしてくれる。ので、二重管理にならない。
- chefspec
- chefのテスト出来るgem。
- vm立てたりせず論理的に正しいことを確認するだけなので速い
- serverspec
- インフラの状態を確認できるテストツール。gem。
- test-kitchen
- chefのテスト出来るgem
- chefspecと違ってvm立てて実際実行して状態確認する。
- その分遅い
- vagrantとかserverspecとかと組み合わせて使う
- foodcritic
- chefのlint的gem
- chef-zero
- インメモリの簡易chefサーバ。gem。
- chefdk
- 上記berkshelf, chefspec, serverspec, test-kitchen, foodcritic, chef-zero, その他もろもろ入った開発キット。
- vagrant-berkshelf
- vagrant plugin。
- vagrantでchefのレシピを実行するとき、Berksfileに記述されている、そのレシピが依存してるレシピを自動的にインストールしてくれる。