В каком порядке выполняется кулинарная книга шеф-повара

Я пытаюсь понять, что такое шеф-повар, и хоть убей, я не могу найти, как ведутся кулинарные книги.

Если у меня есть файловая структура

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, но это не так. Не объясняйте выполнение поваренной книги только выполнением на уровне узла. Буду признателен за любые ресурсы или ссылки на документы шеф-повара.

Ваше здоровье


person Chris Barrett    schedule 27.04.2014    source источник
comment
Узел шеф-повара загружается с ролью; роль (в конце концов, для каждой среды) имеет список выполнения, состоящий из других ролей или рецептов, который определяется шеф-поваром с использованием того, что вы непосредственно настраиваете в самой роли, а также транзитивных зависимостей.   -  person guido    schedule 27.04.2014
comment
Спасибо, это именно то, что я искал   -  person Chris Barrett    schedule 27.04.2014
comment
Chef 11 исправил ошибку, из-за которой файлы атрибутов загружались случайным образом. См.: tickets.opscode.com/browse/CHEF-2903.   -  person Mark O'Connor    schedule 27.04.2014


Ответы (1)


Рецепты запускаются в порядке их появления в списке выполнения. Будут выполняться только рецепты, которые встречаются в списке выполнения (плюс любые рецепты, которые включены в место с помощью include_recipe. Обратите внимание, что каждый рецепт будет выполняться только один раз, даже если он встречается в списке выполнения несколько раз.

Файлы атрибутов из поваренных книг загружаются в следующем порядке:

  1. Атрибуты зависимостей (например, поваренные книги, объявленные с помощью depends в metadata.rb
  2. attributes/default.rb
  3. все остальные attributes файлов в алфавитном порядке.

Обратите внимание, что загружаются все файлы атрибутов в поваренной книге, независимо от их имени. Будут загружены только атрибуты поваренных книг, которые либо явно присутствуют в разрешенном списке выполнения (т. е. рецепты, загруженные ролями, либо явным образом включены в список выполнения), либо являются зависимостями их поваренных книг.

person Holger Just    schedule 28.04.2014