[Berkshelf] Cookbookで依存関係を記述する方法
%w{gcc make}.each do |pkg|
package pkg do
action :install
end
end
gcc,makeのインストールのような定番処理はopscodeのcookbook "build-essential"がやってくれるのでそちらに任せてしまいましょう。
やり方
- mycookbook/metadata.rb に依存関係を記述する
- レシピ内でinclude_recipe して呼び出す
mycookbook/metadata.rb に依存関係を記述する
name 'mycookbook'
version '0.0.1'
depends 'build-essential'
こうすれば、berks vendorしたときにBerkshelfが依存関係を自解決してbuild-essentialクックブックを取得してくれます。
レシピ内でinclude_recipe して呼び出す
recipes/default.rb でinclude_recipe "build-essential::default"
と書きます。これで、gccやmakeのインストールを自分で書かなくてもよくなります。
Happy Berkshelf!
カテゴリ:
Chef