Chef infra 厨师,在您的菜谱路径中找不到菜谱

Chef infra 厨师,在您的菜谱路径中找不到菜谱,chef-infra,Chef Infra,在我的厨师报告中,我添加了一本食谱 cookbooks/mycookbook 当我这样做的时候 $ knife cookbook upload mycookbook 我明白了 ERROR: Could not find cookbook php-1.3.1 in your cookbook path, skipping it Uploaded 0 cookbooks. 这里我做错了什么一个文件用于指定刀子的配置详细信息,每次运行刀子可执行文件时都会加载该文件,默认情况下位于~/.chef/

在我的厨师报告中,我添加了一本食谱

cookbooks/mycookbook

当我这样做的时候

$ knife cookbook upload mycookbook 
我明白了

ERROR: Could not find cookbook php-1.3.1 in your cookbook path, skipping it
Uploaded 0 cookbooks.
这里我做错了什么

一个文件用于指定刀子的配置详细信息,每次运行刀子可执行文件时都会加载该文件,默认情况下位于
~/.chef/config.rb
(如果我没有弄错,您也可以将其放在您的chef存储库目录中
.chef/config.rb

确保在
config.rb

cookbook\u路径

用于存储烹饪书的Chef Infra客户端子目录。此值可以是字符串或文件系统位置数组,并按指定顺序处理。最后一本食谱被认为覆盖了局部修改。例如:

cookbook_path [
  '/var/chef/cookbooks',
  '/var/chef/site-cookbooks'
]
要重新迭代,不仅必须在knife/config.rb文件中配置cookbook位置,还必须确保cookbooks文件夹中存在依赖项

例如,您的错误消息是关于特定版本的php的。为了确保php cookbook与cookbook一起上传,您可以在cookbook文件夹中运行以下命令:

berks install
berks upload
这将确保所有相关的食谱都与主食谱一起上传。请参见此处的示例:


正确,如果您使用的是一个整体式厨师知识库,那么还要确保您的每个定制食谱都有一个完整的存储库。尽管您可能只使用
berks安装
并利用