0

我正在开发一个食谱 ( my_cookbook),它与另一个食谱 () 具有依赖关系,而另一个食谱 () 与另一个食谱 ( another_cookbook) 具有依赖关系another_cookbook2。为什么我需要在my_cookbookBerksfile 中指定过渡依赖(意味着将another_cookbook2依赖添加到 Berskfile)?如果Berksfileanother_cookbook2中已经指定了依赖项?another_cookbook

$ berks install
Resolving cookbook dependencies...
...
Unable to satisfy constraints on package another_cookbook2, which does not exist, due to solution constraint (another_cookbook = 0.0.1). Solution constraints that may result in a constraint on another_cookbook2: [(another_cookbook = 0.0.1) -> (another_cookbook2 >= 0.0.0)]
Missing artifacts: another_cookbook2
...

在将我的食谱上传到 Chef 服务器之前,我正在尝试执行此操作。

4

1 回答 1

0

你没有。
如果你分享你Berskfile的 s,我们可以告诉你发生了什么。
文件中列出了依赖项metadata.rb,而不是Berksfile. 只是告诉 Berks在Berksfile哪里可以找到这些依赖项。

如果您的berksfile 中没有像样的Berks API 端点,例如supermarket.chef.io,那么您可能必须列出相关食谱的位置。

与 不同metadata.rb,berksfiles 不是递归构建的,因此Berksfile不会使用依赖说明书中的 。

于 2015-03-18T19:29:55.317 回答