В чем разница между проектами Hudson и CruiseControl для Java?

Я думаю, что название подводит итог. Я просто хочу знать, почему один или другой лучше для непрерывных интеграционных сборников проектов Java из Svn.

Ответ 1

Как долгое время CruiseControl коммиттер и тот, кто никогда не использовал Хадсона, я довольно предвзятый, но я беру на себя это:

Хадсон намного легче вставать и работать (в значительной степени из приятного веб-интерфейса) и имеет очень активное сообщество разработчиков плагинов.

CruiseControl имеет поддержку от сторонних материалов и имеет преимущество в том, чтобы делать некоторые аккуратные трюки с конфигурацией xml, такой как предварительная конфигурация плагина и включать. проекты, которые позволяют вам отображать информацию о конфигурации с проектом.

Если у вас будет только несколько сборок, я думаю, что Хадсон - явный победитель. Если у вас будет много - и не против xml - тогда я думаю, что трюки конфигурации CruiseControl xml станут настоящей силой.

Ответ 2

Я согласен с этим ответом, но хотел добавить несколько точек.

Короче говоря, Хадсон (обновление: Jenkins) скорее всего лучший выбор сейчас. Прежде всего, потому, что создание и настройка заданий ( "проекты" в словарях CC) намного быстрее благодаря веб-интерфейсу Hudson, по сравнению с редактированием файла конфигурации CruiseControl XML (который мы использовали для контроля версий только для того, чтобы лучше отслеживать его), Последнее не особенно сложно - оно просто медленнее и утомительно.

CruiseControl был отличным, но, как отмечалось в названии блога Dan Dyer, Почему вы все еще не используете Hudson?, it страдает от того, чтобы быть первым. (Ум, как и Британия, если хотите, позже в индустриальную революцию, когда другие начали обгонять ее новыми технологиями.)

Мы использовали CruiseControl сильно и постепенно переключились на Hudson, наконец, используя его исключительно. И еще более интенсивно: в процессе мы начали использовать CI-сервер для многих других вещей, чем раньше, потому что настройка и управление заданиями Hudson настолько удобна. (У нас теперь есть 40+ рабочих мест в Хадсоне: обычные рабочие места для сборки и тестирования для стабильных и развивающихся веток, рабочие места, связанные с выпуском (установщики и т.д.), Задания, которые выполняют некоторые (экспериментальные) показатели против кодовой базы, те, которые выполняются (медленные ) UI или интеграционные тесты для конкретной версии базы данных и т.д.)

Из этого опыта я бы утвердил, что даже если у вас много сборок, в том числе сложных, Хадсон - довольно безопасный выбор, потому что, как и CC, вы можете использовать его, чтобы что-либо сделать, в основном. Просто настройте свою работу для запуска любых Ant или целевых Maven, скриптов оболочки Unix или сценариев Windows.bat в желаемом порядке.

Что касается материала третьей стороны (упомянутого здесь Джеффри Фредриком) - это хороший момент, но я чувствую, что Хадсон быстро догоняет, и что там уже имеется очень большое количество доступных <платных плагинов .

Для меня две вещи, которые я могу назвать, что я скучаю по CruiseControl:

  • Его предупреждающие письма о сломанных сборках были более информативными, чем сообщения Хадсона. В большинстве случаев первопричина была очевидна из собственно красиво отформатированной HTML-почты CC, тогда как с Hudson мне обычно нужно следовать ссылке на веб-интерфейс Hudson, и немного щелкнуть по ней, чтобы получить детали.
  • панель управления CruiseControl лучше всего подходит из коробки, как " информационный радиатор" (отображается на общественном мониторе или проецируется на стену, чтобы вы всегда могли быстро видеть статус всех проектов). На первой странице Hudson нам нужны были трюки Greasemonkey, чтобы получить рабочие строки, все красиво зеленые/красные.

Незначительный отказ от ответственности: я не очень внимательно следил за проектом CC за последний год или около того. (Но из быстрый просмотр он не изменился ничем не драматичным образом.)

Примечание (2011-02-03): Хадсон был переименован /forked как Jenkins (создателем Hudson Kohsuke Kawaguchi и другими). Похоже, что Oracle, который контролирует имя Хадсона, будет поддерживать "Hudson ", но моя личная рекомендация - пойти с Jenkins, независимо от того, что говорит Oracle.

Ответ 3

Мой последний проект, мы начали с CruiseControl. Который качнулся. Затем мы переехали в Хадсон, который еще больше качался. Что мне понравилось в Хадсоне:

  • Проекты вверх и вниз по течению. Таким образом, фиксация вашего кода доступа к данным в конечном итоге также инициирует сборку уровня представления.

  • Легко использовать существующий проект в качестве отправной точки нового, поэтому, если у вас есть привычка создавать ветки разработки, то убедиться, что они находятся в непрерывной интеграции, это просто.

Ответ 4

Одно отличие состоит в том, что Хадсон является продуктом одного гениального интеллекта - Кохсуке Кавагути. Из-за этого он последователен, согласован и тверд. Недостатком может быть некоторое ограничение скорости прогресса. Тем не менее, Кохсуке невероятно плодовито, поэтому я не стал бы слишком беспокоиться об этом. И это расширяемо, поэтому, если что-то у Кохсуке не хватает (или не хочет), вы, вероятно, можете сделать это сами.

Ответ 5

Я посмотрел как на Cruise Control, так и на Hudson, но выбрал Hudson, так как было намного проще настроить и настроить. Хадсон кажется очень широко используемым в наши дни с регулярными выпусками и множеством расширяемости через плагины. Я бы очень рекомендовал его.

Ответ 6

Хадсон - более удобная альтернатива, на мой взгляд. Он может быть настроен и поддерживается полностью через веб-интерфейс (конечно, без первоначальной установки webapp).

Единственный способ, который можно сказать о CruiseControl, - это подсчитать встроенный редактор XML файлов.

Тем не менее, используя оба варианта, я все равно предпочел бы, чтобы у кого-то не было автоматической сборки.

Ответ 7

Я попробовал круиз-контроль... Его хорошо... Но документы фрагментированы. Панель управления запутана. Создание виджета также запутывает. Никогда не пробовал хадсон. Попробуй в выходные.

Ответ 8

Недавно я установил Jenkins для создания проектов Borland BDS 2006 с использованием Subversion, и я очень доволен этим. Я еще никогда не использовал CruiseControl, поэтому сравнивать не могу. Прочтите мое сообщение в блоге для получения дополнительной информации.

Непрерывная интеграция проекта Delphi с Jenkins