Il m'a fallu environ une heure pour comprendre qu'Hudson n'a fait que se ramifier récemment (janvier 2011)
Je n'ai aucune idée de la rapidité avec laquelle le changement de chaque branche est maintenant, mais plus important encore, quelle est la direction que prend chaque branche et quelles sont les clés points pour que l'on puisse faire un choix entre lequel aller?
Quelqu'un a-t-il des liens vers la feuille de route du produit et des différences de fonctionnalités?
continuous-integration
hudson
jenkins
Greg Domjan
la source
la source
Réponses:
Utilisez Jenkins .
Jenkins est le récent fork des développeurs principaux de Hudson. Pour comprendre pourquoi, vous devez connaître l'historique du projet. Il était à l'origine open source et pris en charge par Sun. Comme une grande partie de ce que Sun a fait, il était assez ouvert, mais il y avait un peu de négligence bénigne. La source, les trackers, le site Web, etc. ont été hébergés par Sun sur leur plateforme java.net relativement fermée.
Puis Oracle a acheté Sun. Pour diverses raisons, Oracle n'a pas hésité à tirer parti de ce qu'il perçoit comme ses actifs. Ceux-ci incluent un certain contrôle sur la plate-forme logistique de Hudson, et en particulier le contrôle sur le nom de Hudson. De nombreux utilisateurs et contributeurs n'étaient pas à l'aise avec cela et ont décidé de partir.
Cela revient donc à ce que Hudson vs Jenkins offre. Hudson et Jenkins d'Oracle ont tous deux le code. Hudson a le support d'entreprise d'Oracle et Sonatype et la marque. Jenkins a la plupart des développeurs principaux, la communauté et (jusqu'à présent) un travail beaucoup plus réel.
Lire ce poste je Reliée haut, puis lisez le reste de ces par ordre chronologique ordre . Pour l' équilibre , vous pouvez lire l'Hudson / Oracle prendre sur elle . Il est assez clair pour moi qui joue en défensive et qui a de réelles intentions pour le projet.
la source
Comme l'a écrit chmullig , utilisez Jenkins . Quelques points supplémentaires:
En fait, c'est sans doute Oracle qui a fait la fourche ! Et techniquement aussi, c'est un peu ce qui s'est passé .
C'est intéressant de voir ce qui sort de "Hudson". Tandis que le "Winston résume l'état et l'avenir rose du projet Hudson" qu'ils ont posté sur le (nouveau) site Web Hudson me semblait à l'origine un drôle d'humour, c'était peut-être une prise de contrôle délibérée, et les gars de Sonatype ont en fait de grandes idées leur manche. Cette analyse , suggérant une stratégie délibérée d'Oracle / Sonatype pour évincer Kohsuke et l'équipage pour créer un Hudson plus "entreprenant" est une lecture très intéressante!
Dans tout les cas, cette brève comparaison quinze jours après la scission - bien qu'elle ne soit pas exactement scientifique - montre que Jenkins est de loin plus actif dans les deux projets.
... et quelques informations de fond:
Le créateur de Hudson, Kohsuke Kawaguchi , a commencé le projet sur son temps libre, même s'il travaillait pour Sun Microsystems et a ensuite payé par eux pour le développer davantage. Comme @erickson l'a noté à une autre question SO ,
Après l'acquisition par Oracle, Kohsuke n'a pas traîné longtemps (en raison du manque de moniteurs ...?; -] ), et est allé travailler pour CloudBees . Ce qui a commencé fin 2010 comme un conflit sur les outils entre la communauté des développeurs et Oracle et s'est terminé par le renommage / fork / split est bien documenté dans les liens fournis par chmullig. Pour moi, toute cette énigme témoigne, peut-être plus que toute autre chose, de l'incapacité ou de la réticence totale d'Oracle à parrainer un projet open source d'une manière qui satisfait toutes les parties (Oracle, développeurs, utilisateurs). Ce n'est pas dans leur ADN ou quelque chose comme nous l'avons vu dans d' autres cas aussi.
Compte tenu de tout ce qui précède, je suivrais personnellement Kohsuke et les autres développeurs principaux dans cette affaire, et j'irais avec Jenkins.
la source
Juste mon point de vue sur la question, trois mois plus tard:
Jenkins a poursuivi le chemin emprunté par le Hudson original avec des sorties fréquentes, y compris de nombreuses mises à jour mineures.
Oracle semble avoir largement délégué le travail sur la voie future d'Hudson à l'équipe Sonatype, qui a effectué des changements importants, en particulier en ce qui concerne Maven. Ils l'ont transféré conjointement à la fondation Eclipse.
Je suggère que si vous aimez le son de:
, alors je suggérerais Hudson.
Inversement, si vous préférez:
alors je suggère Jenkins. (et comme un commentateur l'a noté, Jenkins a maintenant également des versions "LTS" qui sont maintenues sur une branche plus "stable")
Le cours prudent serait de choisir Hudson maintenant et de migrer vers Jenkins si les fonctionnalités indispensables ne sont pas disponibles. Le cours dynamique serait de choisir Jenkins maintenant et de migrer vers Hudson si la recherche des mises à jour devient trop longue à justifier.
la source
À l'avant .. Je suis un contributeur Hudson et auteur du livre Hudson, mais je n'ai pas été impliqué dans toute la division des projets.
En tout cas voici mon conseil:
Découvrez les deux et voyez ce qui correspond le mieux à vos besoins.
Hudson va achever la migration pour devenir un projet Eclipse de haut niveau plus tard cette année et a obtenu tout un tas de développeurs à temps plein, d'AQ et d'autres travaillant sur le projet. Il fonctionne toujours bien et compte beaucoup d'utilisateurs et, étant le serveur CI par défaut d'Eclipse, il continuera de répondre aux besoins de nombreux développeurs Java. En regardant la feuille de route et les plans pour l'avenir, vous pouvez voir qu'après l'intégration de Maven 3 avec la version 2.1.0, tout un tas d'autres fonctionnalités intéressantes sont à venir.
http://www.eclipse.org/hudson
Jenkins de l'autre côté a conquis de nombreux utilisateurs originaux de Hudson et possède une grande communauté d'utilisateurs sur plusieurs technologies et a également tout un tas de développeurs qui y travaillent.
À ce stade, les deux serveurs CI sont d'excellents outils à utiliser et, en fonction de vos besoins en termes de technologie, l'intégration avec l'un ou l'autre pourrait être meilleure. Les deux produits sont disponibles en open source et vous pouvez obtenir un soutien commercial de diverses sociétés pour les deux.
Dans tous les cas .. si vous n'utilisez pas encore de serveur CI .. commencez maintenant avec l'un d'eux et vous verrez d'énormes avantages.
Mise à jour de janvier 2013: après un long processus de nettoyage IP et d'autres améliorations, Hudson 3.0, la première version approuvée de la fondation Eclipse, est désormais disponible.
la source
Jenkins est le nouveau Hudson. Cela ressemble plus à un renommage, pas à un fork, puisque toute la communauté de développement est passée à Jenkins. (Oracle reste assis dans un coin en tenant sa vieille balle "Hudson", mais c'est juste un projet sans âme maintenant.)
Cf Ethereal -> WireShark
la source
J'ai deux points à ajouter. Premièrement, Hudson / Jenkins concerne les plugins. Les développeurs de plugins sont passés à Jenkins et nous aussi, les utilisateurs. Deuxièmement, je ne suis pas personnellement un grand fan des produits Oracle. En fait, je les évite comme la peste. Pour l'argent dépensé en licences et en matériel pour une solution Oracle, vous pouvez embaucher deux fois le personnel d'ingénierie et en avoir encore un peu pour acheter de la bière tous les vendredis :)
la source
Pour ceux qui ont mentionné une réconciliation comme un avenir potentiel pour Hudson et Jenkins, avec le fait que Jenkins rejoindra SPI , il est peu probable à ce stade qu'ils se réconcilient.
la source
Du site Web de Jenkins, http://jenkins-ci.org , ce qui suit résume.
Oracle est désormais propriétaire de la marque Hudson, mais l'a concédée sous licence Eclipse EPL . Jenkins est sur la licence MIT . Hudson et Jenkins sont tous deux open-source. Sur la base de la combinaison de qui vous travaillez et de vos préférences personnelles pour l'open-source, la décision est simple à mon humble avis.
J'espère que cela vous a été utile.
la source