4

我正在努力了解厨师,而对于我的一生,我无法找到烹饪书籍的运行方式

如果我有文件结构

chef-repo
├── cookbooks
│   └── test
│       ├── attributes
│       │   ├── default.rb
│       │   └── test.rb
│       ├── files...
│       ├── metadata.rb
│       ├── recipes
│       │   ├── default.rb
│       │   └── test.rb
│       └── templates...
├── roles
│   └── starter.rb
└── Vagrantfile

属性是如何加载的以及按什么顺序加载?例如,它加载所有属性(default.rb 和 test.rb),而 default.rb 总是首先加载

食谱是如何运行的?例如,只有 default.rb 运行,而一切,或所有都按字母顺序运行。

我找到了http://docs.opscode.com/essentials_nodes_chef_run.html但它并没有解释说明书的执行,只解释了节点级别的执行。任何资源或厨师文档的链接将不胜感激

干杯

4

1 回答 1

4

配方按照它们在运行列表中出现的顺序运行。只有出现在运行列表中的配方才会被执行(加上任何包含在适当位置使用include_recipe的配方。请注意,每个配方只会运行一次,即使它在运行列表中出现多次。

食谱中的属性文件按以下顺序加载:

  1. 依赖项的属性(即用dependsin声明的说明书metadata.rb
  2. attributes/default.rb
  3. 所有其他attributes文件按字母顺序排列。

请注意,食谱中的所有属性文件都会被加载,无论它们的名称如何。只有明确出现在已解析的运行列表中的食谱的属性(即由角色加载的配方或明确包含在运行列表中)或作为其食谱的依赖项的属性才会被加载。

于 2014-04-28T10:42:06.083 回答