Ответ 1
Я также искал этот инструмент.
Нашел этот, который показывает, что это делает shef.
http://stevendanna.github.com/blog/2012/01/28/shef-debugging-tips-1/
Я новичок в рубине и шеф-поваре. Я разрабатывал поваренные книги, фиксировал их, загружал их на Chef Server, а затем развертывал их на клиентском шеф-поваре с изменением роли, за которым следовал "клиент-клиент" на клиенте. Этот процесс медленный.
Как я могу, используя IDE (Eclipse в моем случае), разрабатывать кулинарные книги и иметь возможность отлаживать (устанавливать контрольные точки, просматривать переменные и т.д.) и запускать их без загрузки их на сервер шеф-повара, а затем вытаскивать их обратно с помощью шеф-клиент работает?
Я также искал этот инструмент.
Нашел этот, который показывает, что это делает shef.
http://stevendanna.github.com/blog/2012/01/28/shef-debugging-tips-1/
Вы можете использовать Eclipse в качестве простого редактора для Cookbook поваров. У вас не будет поддержки IDE и отладки, но некоторые люди, подобные мне, могут в любом случае предпочесть.
Если вы будете использовать Ruby Editor на Eclipse, вы можете получить подсветку синтаксиса для файлов Ruby.rb, но я еще не пробовал этого.
Вы можете сделать любую папку проектом Eclipse (например, chef-repo ИЛИ конкретной cookcook), добавив файл .project внутри:
<?xml version="1.0" encoding="UTF-8"?> <projectDescription> <name>PROJECT_NAME</name> <comment></comment> <projects> </projects> <buildSpec> </buildSpec> <natures> </natures> </projectDescription>
Затем в Eclipse выберите "Файл" → "Импорт" → "Общие" → "Существующие проекты" в "Рабочая область" и выберите папку, в которую вы добавили файл .project.
Ответ не так прост, на сегодняшний день у Opscode нет "официального плагина".
Я провел последние несколько вечеров, создавая плагин для шеф-повара для eclipse. Это очень голые кости прямо сейчас, если другие люди проявляют интерес к работе над этим, я мог бы добавить еще больше... На данный момент он делает большую часть того, что мне нужно (создание новых кулинарных книг, добавление рецептов, атрибутов, lwrps и т.д.), в основном я помещаю обертку затмения вокруг инструментов шеф-повара (шеф-повар, берки, кухня, едакритическая и т.д.).
https://github.com/rleibman/chef-eclipse-plugin
У меня нет намерения удалить этот плагин, если только opscode не придумает свои собственные.
Я начал создавать этот плагин с большой помощью из этого урока: https://cvalcarcel.wordpress.com/2009/07/08/writing-an-eclipse-plug-in-part-1-what-im-going-to-do/.
Теперь, сказав все это... если вам удобно с командной строкой, вы можете сделать большую часть того, что вам нужно, с вещами, которые уже есть: создать поваренную книгу с обоими шеф-поварами или шеф-поваром, например:
Шеф-повар порождает поваренную книгу my_cookbook
И затем создайте новый проект ruby в eclipse, открытый для только что созданной вами поваренной книги. После его создания вы можете редактировать рубиновые файлы и т.д. Вы также можете использовать все другие функции шеф-повара (например, рецепт для шеф-повара), чтобы помочь вам начать работу.
Я стараюсь использовать chef-solo
на целевой виртуальной машине. Я проведу репетицию своих кулинарных книг и переадресую локально с шаблоном solo.rb:
path File.expand_path(File.dirname(__FILE__))
cookbook_path "#{File.expand_path(File.dirname(__FILE__))}/cookbooks"
log_level ENV['CHEF_LOG_LEVEL'] && ENV['CHEF_LOG_LEVEL'].downcase.to_sym || :info
log_location ENV['CHEF_LOG_LOCATION'] || STDOUT
verbose_logging ENV['CHEF_VERBOSE_LOGGING']
Настройка log_level
для отладки помогает совсем немного, когда вы едете на велосипеде с бегуном.
Была ли какая-то работа над Kepler и обнаружила, что:
Короче говоря, добавьте это:
<buildSpec>
<buildCommand>
<name>org.eclipse.dltk.core.scriptbuilder</name>
<arguments></arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.dltk.ruby.core.nature</nature>
</natures>
Я сомневаюсь, что какая-то отладка и т.д. - не моя цель, поскольку я запускаю Linux, но, по крайней мере, у нас есть достойный редактор и интеграция git!
Для безопасности также скопировал файл .buildpath в расположение проекта... не уверен, что это необходимо. Общее содержимое:
<?xml version="1.0" encoding="UTF-8"?>
<buildpath>
<buildpathentry kind="src" path=""/>
<buildpathentry kind="con" path="org.eclipse.dltk.launching.INTERPRETER_CONTAINER"/>
</buildpath>
Для Eclipse Ruby Development Tools, по состоянию на 2015 год 13 мая, нет поддержки поваров повара шеф-повара, однако, если вы захотите, есть запатентованная альтернатива.
RubyMine 7 IDE поддерживает шеф-повар с автозаполнением и для определения стандартных ресурсов шеф-повара и их атрибутов. Ruby Mine основан на Intellij IDEA.
Вместо RubyMine эта функция работает с Intellij IDEA, если вы установите плагин интеграции шеф-повара поверх ruby plugin
Если вы студент или преподаватели, или для обучения или обучения или для проектов с открытым исходным кодом, вы можете подать заявку на бесплатную лицензию.
Может быть, это уже известно, но в настоящее время мы можем использовать ATOM с дополнительными пакетами по-шеф-поварам, linter-foodcritic, linter-ruby