Очевидно, что одна из самых приятных вещей в Chef - это повторное использование проверенных компонентов через кулинарные книги, особенно с помощью подхода поваренной книги-оболочки.
Однако как выбрать кулинарную книгу для упаковки? Некоторые примеры, которые потратили кучу моего времени.
поваренная книга с конфигурационным erb с жестко запрограммированными устаревшими, а не просто устаревшими флагами. Сервис отклоняет файл конфигурации. Примечание: насколько я понимаю, обернуть исправленный шаблон erb нетривиально, если вы не клонируете и не поддерживаете все это.
поваренная книга, которая проверяет версии Ubuntu до 9.0.4, похоже, ничего не делает выше этого и ссылается на устаревший каталог /etc/event.d/.
поваренные книги сильно связаны с такими инструментами надзора, как runit или bluepill. Это также причина головной боли, если вашего любимого инструмента нет в списке, и вы не можете приспособиться к нему.
До сих пор я использовал кулинарные книги supermarket.chef.io, и они в основном работали. За исключением того, что его поваренная книга для службы, которую я хочу, кажется не обслуживаемой и готовой к принятию.
Некоторые идеи:
проверьте последние коммиты github / время последнего обновления. Но что, если это просто сработает? Тогда его не надо обновлять.
звезды. но что, если бы все звезды были выпущены очень давно, а кулинарная книга была актуальной?
проверьте наличие проблем с github, которые не закрываются. Может быть лучше.
заранее посмотрите рецепты и атрибуты. Однако работает лучше, если вы уже знаете настройку целевого программного обеспечения.
посмотрите на количество участников и оцените, будет ли это быстрый побочный проект или он, скорее всего, останется в рабочем состоянии.
запустить его и посмотреть типы ошибок. Те, которые я выбрал в первую очередь, кажутся мне поваренными книгами, которые не отслеживают последние обновления ни для ОС, ни для программы, которой они управляют, но не имеют гибкости на основе атрибутов, чтобы это учесть.
есть где-нибудь рейтинговый сайт? Поиск в Google сайтов, где я готовлю еду
Извините, я понимаю, что это общий вопрос. Но, безусловно, если повторное использование является целью экосистемы Chef, то разумный выбор лучшей поваренной книги сообщества для упаковки - ключевой ингредиент успеха для конечного пользователя. Помимо технических навыков использования самого Chef.
Как ты это делаешь? Какая у вас эвристика?
Большое количество кулинарных книг для меня тоже на github заставляет меня думать, что это не решенная проблема.
Лично я начинаю с просмотра количества загрузок в супермаркете, а затем смотрю непосредственно на страницу github. Если источник не находится в общедоступном контроле версий, я продолжаю.
Просматривая код, я просто бегло просматриваю вопросы, задавая себе следующие вопросы:
а) эта поваренная книга делает только одно
Если это поваренная книга, устанавливающая приложение, это все, что мне нужно. Я не хочу, чтобы он возился с остальной системой. (например: коснитесь физических дисков, томов ebs и т. д.)
б) если я воспользуюсь этой кулинарной книгой, будет ли она расширяема
Если это библиотека рецептов, раскрывающая ресурсы, я хочу, чтобы эти ресурсы обеспечивали адекватный контроль над любыми подресурсами, которые она использует. Я терпеть не могу ресурс, который создает шаблон для узкого случая использования, но не позволяю мне адекватно изменять источник шаблона или переменные шаблона.
Если это поваренная книга на основе рецептов, то я хочу, чтобы большинство соответствующих битов можно было настраивать с помощью атрибутов. Я вообще не возражаю против поваренных книг-оберток, но я буду чертовски счастливее, если смогу установить несколько атрибутов, а не слишком много обертывать другие ресурсы.