Мы недавно начали внедрять правильный конвейер построения CI для сценария непрерывного развертывания и решили использовать Chef в качестве нашего инструмента CM. Мы также используем Vagrant для создания изолированных локальных сред для разработчиков для наших разработчиков, поскольку он позволяет просто «бродяжничать вверх», а env просто запускается. Vagrant должен поддерживать Chef Zero, что и делает. Тем не менее, это требует хранения предварительно загруженных кулинарных книг в директории кулинарных книг, то есть управление зависимостями и их версиями будет огромной болью без «диспетчера пакетов».Среда разработки с бродягой и шеф-поваром
Что я хотел бы сделать, это использовать либо Policyfile, либо Berksfile для управления зависимостями поваренной книги. К сожалению, это не работает (или я делаю что-то неправильно). Прежде всего, я не мог найти способ реализовать Policyfile с помощью Vagrant, хотя функция была выпущена 2 года назад. Единственное, что появилось, было this. Путь Berkshelf был более многообещающим, потому что для Vagrant есть плагин «бродяга-беркшефа», который делает именно то, что я хочу ... но с несколькими иконами. Одной из проблем является зависимость от ChefDK. Главное, однако, в том, что это было своего рода устаревшим в пользу TestKitchen.
Итак, TestKitchen, в этом аккуратном инструменте было много шума. Он поддерживает как Policyfiles, так и Berkshelf, у него есть поставщик бродяг, который запускает виртуальную машину с помощью Vagrant. Так что же не так? Насколько я понимаю, TestKitchen для шеф-повара предназначался для разработчиков Cookbook, потому что он позволяет автоматизировать локальное тестирование Cookbook и т. Д. Но как насчет других разработчиков? Например, если разработчик работает только над самим проектом (приложением), а не с инфраструктурой, зачем разработчику даже нужен ChefDK? Все, что разработчик хочет сделать, это загрузить исходный код для приложения (в нашем случае это веб-приложение), которое включает в себя Vagrantfile в корневом каталоге, а затем просто введите «vagrant up» (поскольку VirtualBox и Vagrant уже установлены на компьютере) и начать работать!
Да, можно использовать TestKitchen в качестве бродячего обертки (this guy говорит, что все в порядке). Вместо «бродяги», разработчик набирал бы «кухню», а затем начинал работать. Но это означает, что Dev уже установил ChefDK, наряду с VirtualBox и Vagrant.
Есть ли [хороший и современный] способ не использовать TestKitchen в качестве поставщика среды разработки? Или это не считается плохой практикой? Мне кажется, что разработчик должен установить ChefDK, если он хочет закрутить dev env на своем ноутбуке. Как вы настроили среду разработки?
Почему бы это быть менее хорошо установить chefdk чем бродяга и куча плагинов для поддержки повара в качестве бродячего provisionner? Этот вопрос, вероятно, основан на высокой оценке и поэтому не подходит для StackOverflow. – Tensibai
Tensibai well..все я могу теперь просто надеяться, что он не получит downvoted =) Спасибо за ваш вклад, хотя! – lime
Ну, вопрос ясен для меня, вероятно, будет полезен на другом носителе (возможно, в списке рассылки https://discourse.chef.io). поэтому нет оснований понижать его, я голосовал, чтобы закрыть его как основанное на мнениях, но я не думаю, что это стоит нисходящего. – Tensibai