私はBerkShelf documentationを見ました。私はそれが料理本の依存関係を管理することを表していることが分かりました。だから、私はjavaとマシンを構築したいと思います。そう、その後は、ベルシェルフ、シェフ、気まぐれと混同しています。
name 'custom-java'
...
version '0.1.0'
、私は単にberks install
を実行しました:
chef generate cookbook custom-java
マイBerksfile
次のとおりです:
source 'https://supermarket.chef.io'
metadata
cookbook 'java'
と私のmetadata.rb
がある私が最初に私のカスタム料理を生成しましたすべての依存関係が解決され、~\.berkshelf\cookbooks
の下にあります。
しかし、custom-java
を迷惑メールの設定に使用する方法はわかりません。私は迷惑な人にこの料理本を自分のマシンに供給するために何をする必要がありますか?
私の放浪構造は次のとおりです。
VagrantFile
├───chef
│ ├───cookbooks
│ │ ├───(((1))) <<<<<<<<<<<<<<<<<<<<<<
│ ├───roles
│ │ ├───java-dev-workstation.rb
Vagrantfile
内容は次のとおりです。
Vagrant.configure("2") do |config|
config.vm.box = "centos/7"
config.vm.provision "chef_solo" do |chef|
chef.roles_path = "chef/roles"
chef.cookbooks_path = "chef/cookbooks"
chef.add_role "java-dev-workstation"
end
end
そしてjava-dev-workstation.rb
:
name "java-dev-workstation"
default_attributes(
# Because it's Oracle, we need to agree to the terms and conditions.
:custom-java => { >>>>>>>>> (((2)))
:install_flavor => 'oracle',
:jdk_version => '8',
:accept_license_agreement => true,
:oracle => { "accept_oracle_download_terms" => true }
}
)
run_list(
"recipe[java]"
)
私はシェフ12.18.31を使用しています。 (((1)))
で
- :私はどのように "輸入" 私の
custom-java
料理、する必要がありますか?それはどこにありますか? - オン
(((2)))
:java
をどのように設定する必要がありますか?
EDIT は私がchef.cookbooks_path
設定しました:
config.vm.provision "chef_solo" do |chef|
chef.roles_path = "chef/roles"
chef.cookbooks_path = 'D:\projects\living\vagrant\production\berk\custom-java'
chef.add_role "java-dev-workstation"
end
EDIT2
それにも関わらず、custom-java
依存関係は解決されていません。
================================================================================
Error Resolving Cookbooks for Run List:
================================================================================
Missing Cookbooks:
------------------
No such cookbook: yum
Expanded Run List:
------------------
* custom-java
Platform:
---------
x86_64-linux
私metadata.rb
内容は次のとおりです。
name 'berk'
...
version '0.1.0'
supports 'centos'
depends 'yum'
現在、すべての依存関係が~/.berkshelf/cookbooks
に位置しています。それはshef-solo
あなたはラッパー料理パターンのために後方にそれを取るんでした...それで用
'java-dev-workstation.rb'ロールのrun_listに' custom-java'を追加することができます。 –
私はどこにでもアップロードしていない場合、どのようにして 'custom-java'料理ブックを解決しようとしていますか? – Jordi
あなたは 'chef_solo'をプロビジョニングして' cookbooks_path'を提供しています - それで十分です。 –