Как использовать подготовку chef с нулем chef с рецептами, которые содержат зависимости?

Я очень новичок в Chef и пытаюсь подготовить виртуальную машину на моем узле vsphere, используя "подготовку Chef".

Когда я выполняю следующее

chef-client -z -o 'my_company::vsphere' 'my_company::test_cluster'

Я получаю следующую ошибку:

================================================================================
Error Resolving Cookbooks for Run List:
================================================================================

Missing Cookbooks:
------------------
No such cookbook: firewall

Проведя некоторое исследование, я наткнулся на вопрос и дискуссию: почему шеф-повар не может решить мои поваренные книги?

Здесь Теджей Кардон упоминает, что путь berks должен быть вызван в конфигурации cookbook_path в knife.rb (по крайней мере, так я его интерпретировал). Я добавил его, и теперь мой файл выглядит так:

# See https://docs.getchef.com/config_rb_knife.html for more information on knife configuration options

current_dir = File.dirname(__FILE__)
log_level                :info
log_location             STDOUT
node_name                "empl1234"
client_key               "#{current_dir}/empl1234.pem"
chef_server_url          "https://my_chef_box/organizations/my_org"
cookbook_path            ["#{current_dir}/../cookbooks", "C:/Users/empl1234/.berkshelf/cookbooks"]

Когда я запускаю команду, описанную выше, я все равно получаю ту же ошибку.

Как я уже упоминал выше, я учусь на шеф-повара, поэтому, если ответ очевиден, будьте добры к этому. И я много гуглил, поэтому, если ответ "гуглите! Я получил именно ту страницу, которая вам нужна в качестве первой ссылки", тогда, пожалуйста, дайте мне условия для Google.:) Спасибо!

1 ответ

Видимо, я не читал достаточно близко. Ответ - экспортировать все зависимости с помощью следующей команды:

berks vendor path_to_hold_cookbooks

Затем поместите path_to_hold_cookbooks как cookbook_path в.chef/knife.rb

Другие вопросы по тегам