119 votes

Bambou vs Hudson(a.k.a. Jenkins) vs tous les autres systèmes CI

Quelqu'un là-bas ont de l'expérience avec la baie d'Hudson et de Bambou? Toute réflexion sur les forces et les faiblesses de ces produits?

Bon, depuis que les gens garder mentionner d'autres produits CI, je vais ouvrir cette. Voici mon problème général. Je souhaite l'installation d'un système CI pour un nouveau projet. Ce projet aura probablement des composants Java (Guerres et Pots), certains modules python, et peut-être même un .NET composant. Alors je veux un serveur CI, qui peut:

  1. Gérer plusieurs langues,
  2. Déployer des artefacts à des serveurs (c'est à dire de déployer la guerre si tous les tests unitaires passent.)
  3. Je voudrais aussi quelque chose qui a intégré avec un décent outil de couverture du code.
  4. En regardant bien les rapports sont sympa, mais pas indispensable.
  5. Plusieurs mécanismes de notification lorsque les choses vont mal.
  6. Je ne suis pas inquiet à propos de l'hébergement. Je vais l'exécuter sur un serveur local ou sur un Amazon instance.
  7. Aussi, ce peut-être de la tarte dans le ciel, mais il ya quelque chose qui peut aussi construire des applications de l'iPhone?

50voto

jens Points 568

Disclaimer: je travaille sur des Bambous et donc je ne vais pas faire de commentaire sur les fonctions d'autres produits CI depuis mon expérience avec eux est limitée.

Pour répondre à vos besoins spécifiques:

Gérer plusieurs langues

Le bambou a la sortie de la boîte de support pour plusieurs langues. Les clients l'utilisent avec Java, .Net, PHP, JavaScript etc. Cela étant dit, la plupart des serveurs de build sont suffisamment génériques pour au moins exécuter un script que vous pouvez lancer votre processus de build.

Déployer des artefacts à des serveurs (c'est à dire de déployer la guerre si tous les tests unitaires passent.)

Bambou 2.7 soutient les Étapes de génération, qui vous permettent de casser votre construire une Unité de Phase de Test et de déploiement de la Scène. Seulement si l'Unité de la Phase de Test réussit, la génération de passer à la Déployer Scène. En Bambou 3.0 nous appuierons Artefact de partage entre les étapes, vous permettant de créer un objet (par exemple, votre guerre) dans la première Étape et l'utilisation de cet Artefact, en suivant les Étapes suivantes pour les tests et le déploiement.

Je voudrais aussi quelque chose qui a intégré avec un décent outil de couverture du code.

Le bambou est livré avec un support pour le Trèfle et dispose également d'un plugin disponible pour Cobertura.

En regardant bien les rapports sont sympa, mais pas indispensable.

Le bambou a un tas de rapports qui sont sympa, mais pas indispensable :)

Plusieurs mécanismes de notification lorsque les choses vont mal.

Le bambou peut vous prévenir par e-mail, flux RSS, messagerie instantanée, une IDE plugin ou une belle plaque de plâtre qui est visible pour l'ensemble de l'équipe.

Je ne suis pas inquiet à propos de l'hébergement. Je vais l'exécuter sur un serveur local ou sur un Amazon instance.

Par expérience, il est généralement plus avantageux d'héberger votre propre serveur CI. Mais si vous avez besoin d'échelle, Bambou rend facile à distribuer vos constructions à d'autres agents locaux ou à l'échelle d'Amazon via Élastique agents.

Aussi, ce peut-être de la tarte dans le ciel, mais il ya quelque chose qui peut aussi construire des applications de l'IPhone?

Similaire à la réponse à votre première question, la plupart des serveurs CI sera en mesure de construire des applications de l'iPhone, à certains égards. Il est possible qu'il y ait un peu plus de script requise.

Prix: Bambou n'est pas libre(en dehors de notre libre de démarreur de licence)/libre/open-source, mais vous obtiendrez de Bambou du code source si vous achetez une licence commerciale et d'appui. Par rapport au coût de la puissance de calcul et le potentiel de l'entretien requis pour un serveur CI, le coût d'un Bambou de licence est plutôt petite.

Espérons que cette aide.

39voto

Steve_ Points 988

Je n'ai pas utilisé le Bambou, mais j'ai utilisé d'Hudson, de Croisière et de TSF et de tous les d'eux Hudson a été de loin le meilleur. Il est ridiculement facile à mettre en place et a une belle interface web pour la configuration d'un projet. Ce qui est formidable à propos de Hudson est qu'il supporte à peu près tout de la langue et de la fonction que vous voulez en supposant que quelqu'un a écrit un plug-in pour cela, ils ont probablement.

http://wiki.hudson-ci.org/display/HUDSON/Plugins

Nous l'avons utilisée pour exécuter .NET, Java et C++ s'appuie sur des intervalles de temps réguliers ainsi que SVN archivages automatique avec harnais de test et c'était génial. La place de l'avant-dernier, j'ai travaillé au lancé de développement iPhone juste avant que je parte et je crois qu'ils ont été à l'aide d'Hudson pour ça aussi.

En Plus, c'est gratuit!

35voto

Gili Points 14674

Bamboo vs Hudson, à un niveau très superficiel, semble se résumer à:

  • Bamboo: Facile à utiliser et beau
  • Jenkins: rude sur les bords, mais beaucoup plus souple que Bamboo

Les deux Bamboo et Jenkins ont de nombreux bugs (vous rencontrez des problèmes) , mais au moins avec Jenkins vous êtes beaucoup plus susceptibles d'avoir une solution de contournement jusqu'à ce qu'il soit fixé. Avec Bamboo, vous êtes bloqué dans l'attente d'une mise à jour.

16voto

Disclaimer: je travaille avec Jenkins.

Dans notre organisation (assez gros, plus de 100 développeurs), nous avons trouvé aussi ces deux fonctions très utiles:

  1. CAS plugin avec la matrice de projet stratégie de sécurité
  2. Construire Le Pipeline Plugin
  3. Version LTS annexe.

À propos de vos questions:

  1. OK
  2. SCP PLUGIN ou SSH PLUGIN
  3. Nous utilisons FINDBUGS, l'Analyse Statique Collecteur de Plug-in, l'Analyse Statique de Code des Plugins, la Tâche Scanner Plugin
  4. Précédente au point 3 + Jenkins liens documentaires plugin
  5. Nous utilisons e-mail Jenkins e-Mail Extension Plugin, mais il prend également en charge d'autres systèmes, comme les flux rss, twitter, publier, sms...
  6. Nous sommes en cours d'exécution dans un Tomcat Hébergement, Localement.
  7. Oui.

5voto

Puce Points 13540

Eh bien, je n'ai pas encore utilisé Bamboo, mais une différence est que Hudson est un logiciel libre / libre / open-source.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X