Chef - Создание Berksfile на основе существующей кулинарной книги

Файл Berksfile отсутствует в кулинарной книге, поэтому я хочу создать новый. Я просто хочу создать Berksfile в существующей кулинарной книге. Поэтому, когда я пытаюсь запустить команду: berks cookbook name_of_my_cookbook

Я получаю следующую ошибку /opt/chef/embedded/lib/ruby/site_ruby/2.3.0/rubygems.rb:271: in find_spec_for_exe: can't find gem berkshelf (>= 0.a) (Gem::GemNotFoundException) from /opt/chef/embedded/lib/ruby/site_ruby/2.3.0/rubygems.rb:299:in activate_bin_path from /usr/local/bin/berks:23:in'

Я попытался установить Berkshelf снова через gem install berkshelf но я получаю еще одно сообщение об ошибке:ERROR: Error installing berkshelf: There are no versions of solve (~> 4.0) compatible with your Ruby & RubyGems. Maybe try installing an older version of the gem you're looking for? solve requires Ruby version >= 2.1.0. The current ruby version is .

У меня нет другой идеи, чтобы решить эту проблему. Я новичок в этом, поэтому я ценю любую помощь.

1 ответ

Решение

Нет причин использовать berks cookbook больше, и я уверен, что это было удалено несколько лет назад. Похоже, ваша первая проблема в том, что ваше окружение драгоценного камня сильно нарушено. Мы поддерживаем Berkshelf только через установщики ChefDK, а не gem install berkshelf, Вы, кажется, имеете chef-client установщик, а не ChefDKтак что исправьте это в первую очередь. Тогда, если вы просто хотите стандартный Berksfile, это:

source "https://supermarket.chef.io/"
metadata
Другие вопросы по тегам