Как выбрать между Хадсоном и Дженкинсом?

Мне потребовался час или около того, чтобы понять, что Гудзон только недавно разветвился (январь 2011)
Я понятия не имею, насколько быстро происходит смена каждой ветви, но, что более важно, в каком направлении движется каждая ветка, и каковы ключевые моменты, чтобы можно было выбирать, с чем идти?

У кого-нибудь есть ссылки на дорожную карту продукта и особенности?

8 ответов

Используйте Дженкинс.

Дженкинс - недавний форк от основных разработчиков Hudson. Чтобы понять почему, нужно знать историю проекта. Первоначально он был с открытым исходным кодом и поддерживается Sun. Как и многое из того, что делал Солнце, оно было довольно открытым, но было немного мягкого пренебрежения. Источник, трекеры, веб-сайт и т. Д. Были размещены Sun на их относительно закрытой платформе java.net.

Затем Оракул купил Sun. По разным причинам Oracle не стесняется использовать то, что воспринимает как свои активы. К ним относятся некоторый контроль над логистической платформой Гудзона и, в частности, контроль над именем Гудзона. Многим пользователям и авторам это не понравилось, и они решили уйти.

Так что все сводится к тому, что предлагает Хадсон против Дженкинс. И Oracle, и Гудзон, и Дженкинс имеют код. У Хадсона есть корпоративная поддержка Oracle и Sonatype, а также бренд. У Дженкинса есть большинство основных разработчиков, сообщество и (пока) гораздо более актуальная работа.

Прочитайте этот пост, который я связал вверх, а затем прочитайте остальные в хронологическом порядке. Для баланса вы можете прочитать о Hudson/Oracle. Мне довольно ясно, кто играет в обороне и у кого есть реальные намерения для проекта.

Как написал chmullig, используйте Дженкинс. Некоторые дополнительные пункты:

... и немного дополнительной информации:

Создатель Hudson, Kohsuke Kawaguchi, начал проект в свое свободное время, даже если он работал в Sun Microsystems, а позже заплатил им за его дальнейшее развитие. Как заметил @erickson на другом вопросе,

[Хадсон / Дженкинс] - продукт единого гениального интеллекта - Кохсуке Кавагути. Из-за этого он последовательный, последовательный и надежный.

После приобретения Oracle, Коусуке долго не задерживался (из-за нехватки мониторов...?; -]) и пошел работать в CloudBees. То, что началось в конце 2010 года как конфликт между инструментами сообщества разработчиков и Oracle и закончилось переименованием / разветвлением / разделением, хорошо задокументировано в ссылках, предоставленных chmullig. Для меня вся эта загадка говорит, возможно, больше, чем что-либо еще, о полной неспособности или нежелании Oracle спонсировать проект с открытым исходным кодом таким образом, чтобы все стороны (Oracle, разработчики, пользователи) были довольны. Это не в их ДНК или чем-то подобном, как мы видели и в других случаях.

Учитывая все вышесказанное, я бы лично следил за Kohsuke и другими основными разработчиками в этом вопросе, и пошел бы с Дженкинсом.

Просто мое мнение по этому вопросу, три месяца спустя:

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

Похоже, что Oracle в основном поручил работу над будущим путем для Хадсона команде Sonatype, которая внесла некоторые существенные изменения, особенно в отношении Maven. Они вместе перенесли его в фонд Eclipse.

Я хотел бы предложить, что если вам нравится звук:

  • менее частые выпуски, но те, которые более интенсивно тестируются на обратную совместимость (больше в цикле выпуска "корпоративного стиля")
  • продукт, ориентированный в первую очередь на сильную интеграцию Maven и / или Nexus (то есть вы не заинтересованы в Gradle, Artifactory и т. д.)
  • предложения профессиональной поддержки от Sonatype или, возможно, Oracle, предпочтение Cloudbees и т. д.
  • Вы не против иметь меньшее сообщество разработчиков плагинов и т.д.

Тогда я бы предложил Хадсон.

И наоборот, если вы предпочитаете:

  • более частые обновления, даже если они требуют более частой настройки и, возможно, немного более рискованны с точки зрения совместимости (более "последний и самый лучший" цикл выпуска)
  • система с более активной поддержкой сообщества, например, другие системы сборки / хранилища артефактов
  • предложения поддержки от оригинального создателя и соавт. и / или у вас нет интереса к профессиональной поддержке (например, вы счастливы, если вы можете получить исправление в "последней и лучшей" на следующей неделе)
  • классическое зелье ведьм в стиле OSS экосистемы развития

тогда я бы предложил Дженкинс. (и, как заметил комментатор, у Дженкинса теперь также есть релизы "LTS", которые поддерживаются в более "стабильной" ветке)


Консервативный курс - выбрать Хадсона сейчас и перейти на Дженкинс, если обязательные функции недоступны. Динамический курс будет состоять в том, чтобы выбрать Jenkins сейчас и перейти на Hudson, если погоня за обновлениями становится слишком трудоемкой, чтобы ее оправдывать.

Вначале... Я коммиттер Гудзона и автор книги Гудзона, но я не участвовал во всем расколе проектов.

В любом случае вот мой совет:

Проверьте оба и посмотрите, что соответствует вашим потребностям лучше.

Хадсон собирается завершить переход к проектам Eclipse высшего уровня в конце этого года, и у него есть целая куча постоянных разработчиков, QA и других, работающих над проектом. Он по-прежнему набирает силу и имеет много пользователей, и, будучи CI-сервером по умолчанию в Eclipse, он по-прежнему будет обслуживать потребности многих разработчиков Java. Глядя на план и планы на будущее, вы можете видеть, что после интеграции Maven 3 с выпуском 2.1.0, впереди целый ряд других интересных функций.

http://www.eclipse.org/hudson

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

На этом этапе оба CI-сервера являются отличными инструментами для использования, и в зависимости от ваших потребностей с точки зрения технологии их интеграция может быть лучше. Оба продукта доступны с открытым исходным кодом, и вы можете получить коммерческую поддержку от различных компаний для обоих.

В любом случае... если вы еще не используете CI-сервер... начните сейчас с любого из них, и вы увидите огромные преимущества.

Обновление январь 2013: после долгого процесса очистки IP и дальнейших улучшений теперь доступен Hudson 3.0 как первый одобренный выпуск Eclipse Foundation.

Дженкинс это новый Хадсон. Это больше похоже на переименование, а не на развилку, поскольку все сообщество разработчиков перешло к Дженкинсу. (Оракул остался сидеть в углу, держа свой старый мяч "Хадсон", но сейчас это просто бездушный проект.)

Cf Ethereal -> WireShark

У меня есть два момента, чтобы добавить. Во-первых, Hudson/Jenkins - это все о плагинах. Разработчики плагинов перешли на Jenkins, и мы тоже, пользователи. Во-вторых, я лично не большой поклонник продуктов Oracle. На самом деле, я избегаю их как чумы. За деньги, потраченные на лицензирование и аппаратное обеспечение для решения Oracle, вы можете нанять в два раза больше инженерного персонала, но у вас останется немного денег, чтобы покупать пиво каждую пятницу:)

Для тех, кто упомянул примирение как потенциальное будущее для Хадсона и Дженкинса, с учетом того, что Дженкинс присоединится к SPI, маловероятно, что в этот момент они примирятся.

С веб-сайта Jenkins, http://jenkins-ci.org/, следующее подводит итог.

Короче говоря, Jenkins CI - это ведущий сервер непрерывной интеграции с открытым исходным кодом. Созданный на Java, он предоставляет более 300 плагинов для поддержки создания и тестирования практически любого проекта.

В настоящее время Oracle владеет торговой маркой Hudson, но лицензирует ее в соответствии с Eclipse EPL. Дженкинс находится на лицензии MIT. И Хадсон, и Дженкинс имеют открытый исходный код. Исходя из сочетания того, на кого вы работаете, и личных предпочтений open source, решение является простым ИМХО.

Надеюсь, это было полезно.

Другие вопросы по тегам