tkuchikiの日記

Linux やプログラミングについて書きます。

chef 12.2.0.alpha.0 から metadata.rb の name attribute が必須に

metadata.rb と書きましたが、metadata.json でも同様です。
以降は、便宜上 metadata.rb と記載します。

エラーについて

したがって、12.2.0.alpha.0 以降 metadata.rb に name attribute を書いていないと、

Exception raised!  #<Chef::Exceptions::MetadataNotValid: Cookbook loaded at path(s) [/path/to/cookbooks/sample-cookbook] has invalid metadata: The `name' attribute is required in cookbook metadata>

のような Exception を吐いて終了します。

ちなみに、metadata.rb を設置していない場合はエラーが出ませんでした。

まとめ

chef 12.2.0.alpha.0 以降、metadata.rb に name attribute が必須になりました。
対応方法としては、

  • name attribute を設定する
  • metadata.rb を設置しない

です。