chefのレシピを開発する時はdebugモードで in Vagrant
chefのレシピを開発する時はdebugモードで行うと良いです。 例えばexecuteリソースを自分で書いた時、 only_if/not_if をテストするのに重宝します。
[2013-08-08T03:09:17+00:00] DEBUG: Skipping bash[update-locale] due to not_if command `cat /etc/default/locale | grep 'LC_ALL.*UTF'`
not_if条件によって"update-locale"というexecuteリソースが実行されなかったことがわかります。
設定方法
Vagrantfileの "config.vm.provision" ブロックに "chef.log_level = :debug" という設定を書き足すことでデバッグログが出るようになります。
Vagrantfileの編集
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config| config.vm.provision :chef_solo do |chef| chef.log_level = :debug end end