'knife cookbook create' 和 'chef generate cookbook' 的区别?

Difference between 'knife cookbook create' and 'chef generate cookbook'?

我正在为厨师学习曲线而苦苦挣扎。这两个命令有什么区别,为什么会有两个?

knife cookbookknife cookbook 子命令用于与位于 Chef 服务器或本地 chef-repo 上的 cookbook 交互。

$ knife cookbook create a_knife_cookbook
$ ls -a
  CHANGELOG.md 
  README.md    
  attributes
  definitions
  files
  libraries
  metadata.rb
  providers
  recipes
  resources
  templates

chef generate cookbook: chef generate cookbook 子命令用于生成食谱。

$ chef generate cookbook a_chef_cookbook
$ ls -a
  .gitignore
  .kitchen.yml
  Berksfile
  README.md
  chefignore
  metadata.rb
  recipes
  spec
  test

knife cookbook createlegacy 创建食谱的方法,它使用所有可能的目录构建食谱的结构。

chef generate cookbook 是 Chef-DK 的一部分,旨在生成一个可测试的食谱结构,其中包含用于测试厨房的最少目录。

两者都可以调整,chef generate 最容易调整,因为以这种方式编写的命令允许所有人构建更适合他们需要的食谱结构。

knife 食谱创建 apache-knife 警告:此命令已被弃用,取而代之的是 chef generate cookbook,很快就会 return 出错。

knife cookbook 创建命令已经过时,您只能使用''chef generate cookbook''