厨师:厨房Converge无法找到当地的食谱依赖

时间:2016-03-30 20:27:57

标签: chef berkshelf test-kitchen

我有2本地食谱。一个称为golang_app,另一个称为test_go_web_apptest_go_web_app取决于golang_app,并通过golang_app::default中的include_recipe 'golang_app::default'运行default.rb

我正在尝试将golang_app添加为test_go_web_app的依赖关系......现在,test_go_web_app的Berksfile看起来像:

source 'https://supermarket.chef.io'

cookbook 'golang_app', path: '../golang_app'

metadata

然而,在运行kitchen converge时,我得到了:

Chef::Exceptions::CookbookNotFound
   ----------------------------------
   Cookbook golang_app not found. If you're loading golang_app from another cookbook, make sure you configure the dependency in your metadata

   Cookbook Trace:
   ---------------
     /tmp/kitchen/cache/cookbooks/test_go_web_app/recipes/default.rb:1:in `from_file'

   Relevant File Content:
   ----------------------
   /tmp/kitchen/cache/cookbooks/test_go_web_app/recipes/default.rb:

     1>> include_recipe 'golang_app::default'
     2:

有没有人能够让这个工作?

1 个答案:

答案 0 :(得分:5)

除了Berksfile行之外,您还需要将metadata.rb添加到 [Service] public class backgroudservice : Service { ... } 以获取test_go_web_app。还要确保Berksfile正好位于文件夹结构中的Kitchen配置文件旁边。