0

我正在尝试学习厨房/厨师,我正在按照此处提供的教程进行操作

http://kitchen.ci/docs/getting-started/installing

现在我被困在问题而不是问题上。给定的教程创建了一个 git-cookbook。现在我想知道我们是在告诉厨房创建一个安装了“git”的盒子吗?

我重新做了整个教程,没有空metadata.rb而不是提供任何东西(根据教程),我把它留空并运行kitchen init --driver=kitchen-vagrant。正如预期的那样,它创建了没有安装 git 的食谱/盒子。

然后我添加了以下行metadata.rb

name "git"
version "0.1.0"

然后跑了kitchen converge default-ubuntu-1204。我期望它会更新我的食谱/盒子,上面安装了 git,但它没有。

我必须再做kitchen init一次吗?它不会覆盖我现有的 .kitchen.yml 文件以及我在其中所做的所有更改吗?在已经创建的说明书/盒子中安装工具的最佳方法是什么?

4

1 回答 1

1

听起来您需要在某个地方实际使用 git 配方来获取您正在寻找的更改。无论是与

include_recipe 'cookbookname::recipename' 

编辑: include_recipe 资源位于您在运行列表中使用的配方中。将其视为将您包含的整个配方复制/粘贴到您包含它的文件中。

或将其添加到 .kitchen.yml 中的套件运行列表中

suites:
- name: <suite name>
  run_list:
  - recipe[<cookbookname::recipename>]
  - recipe[<cookbookname::recipename>]...

当您融合厨房时,如果您告诉它,厨房会发现您的配置差异并添加新东西,但它不会在没有明确指示的情况下删除项目。

于 2015-08-04T19:54:18.743 回答