Назад | Перейти на главную страницу

chef: knife deps - как указать версию кулинарной книги

RE: https://docs.chef.io/knife_deps.html

С нож депс - удаленный вариант, я могу запросить наш шеф-сервер. список поваренной книги ножа -a вернет все версии поваренной книги. Как я могу использовать ножи запросить зависимости конкретной версии поваренной книги? Я пробовал использовать всевозможные разделители, чтобы добавить номер версии к имени поваренной книги, и я пробовал их как отдельные аргументы. Пытался покопаться в коде Ruby и обнаружил, что это сложно сделать - цель и организация всех этих драгоценных камней очень неясны.

В настоящее время ответа нет. Пытаюсь вернуть свою награду!

Обязательно ли использовать "ножевые глубины"? потому что вы можете достичь своей цели, используя команду «поиск ножа», например:

knife search -i 'cookbooks:your-cookbook' -a cookbooks.your-cookbook.version

Это даст вам вывод, который показывает имя хоста и версию поваренной книги:

1 items found

server.name.example:
  cookbooks.cs-redis.version: 0.3.2

Еще вы можете использовать базовую книгу рецептов и установить атрибут на узле с версиями книги рецептов.

Пример:

run_context.cookbook_collection.each do |key, cookbook|
  node.set['base_cookbook']['cookbook_versions'][cookbook.name] = cookbook.version
end

Затем вы можете запросить версии, используемые узлом, следующим образом:

knife node show <node-name> -a base_cookbook.cookbook_versions