Как написать кулинарную оболочку в шеф-поваре для местных кулинарных книг и не зависеть от кулинарных книг шеф-повара сообщества шеф-поваров?

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

Например: у меня есть две кулинарные книги "test-a" и "test-b", и обе они доступны на локальном сервере шеф-повара и не зависят от кулинарных книг сообщества.

Попросите создать кулинарную книгу-оболочку «тест» с вышеупомянутыми кулинарными книгами «тест-а» и «тест-б». так что они могут сделать ножевой bootstrap/role/run_list.

Заранее спасибо


person Jeetu    schedule 02.12.2018    source источник


Ответы (1)


используйте run_list в объекте role. в вашем случае это должно быть что-то вроде:

$ cat roles/test.json
{
  "run_list": [
    "recipe[test-a]",
    "recipe[test-b]"
  ]
}

другой способ — создать еще одну кулинарную книгу с именем test и использовать include_recipe, и это должно быть что-то вроде:

$ cat test/recipes/default.rb
include_recipe 'test-a'
include_recipe 'test-b'

$ cat test/metadata.rb
depends 'test-a'
depends 'test-b'

если у вас есть атрибуты, которые вы хотели бы переопределить, сделайте это в кулинарной книге обертки test. например, если поваренная книга test-a имеет такой атрибут, как node.default[:foo] = 'baz', вы можете переопределить его следующим образом.

$ cat test/attributes/default.rb
node.default[:foo] = 'spam'

подумайте о том, чтобы прочитать написание кулинарных книг оберток и Doing Wrapper Cookbooks Right в блоге шеф-повара

person Mr.    schedule 04.12.2018
comment
Спасибо за информацию. Итак, как насчет передачи атрибутов overrride в кулинарную книгу-оболочку. - person Jeetu; 10.12.2018
comment
@Jeetu: после твоего вопроса я обновил свой ответ. Я надеюсь, что это решит вашу проблему. если это так, пожалуйста, примите это - person Mr.; 11.12.2018