如何从当前目录上传 Chef 食谱?

How to upload Chef cookbook from current directory?

我正在转向每个厨师食谱的单个 git 存储库的工作流程。我有一个相当新的 chefdk。我希望能够从当前 git 存储库中上传到 chef,而无需其背后的 chef-repo。我正在努力了解如何通过刀上传来做到这一点。有任何想法吗。 (我还不能移动到 PolicyFiles,但我现在想设置一个工作流程)。从 git 回购中轻松 "knife upload" 的任何想法都会很有帮助。

我有一个原始别名 "upload" 可以 knife cookbook upload ${PWD##*/} -o .. 上传当前的食谱。

我的目录名称与 metadata.rb 中定义的说明书名称相匹配,我只从说明书的根目录中 运行 它,因此足以满足我的工作流程。

我建议改用 berkshelf。它是 chefdk 的一部分,还将加载食谱依赖项。

示例

#
# Generate cookbook
#
$ chef generate cookbook demo
$ cd demo

#
# Upload cookbook using Berkshelf
#
$ berks install
$ berks upload

#
# Check to see cookbooks loaded
#
$ knife cookbook list
demo   0.1.0