Quelqu'un a-t-il de l'expérience avec Hudson et Bamboo? Avez-vous des réflexions sur les forces et les faiblesses relatives de ces produits?
D'accord, puisque les gens continuent de mentionner d'autres produits CI, je vais ouvrir cela davantage. Voici mon problème général. Je souhaite configurer un système CI pour un nouveau projet. Ce projet aura probablement des composants Java (WAR et JAR), des modules python et peut-être même un composant .NET. Je veux donc un serveur CI qui puisse:
- Gérer plusieurs langues,
- Déployez des artefacts sur les serveurs (c'est-à-dire déployez la guerre si tous les tests unitaires réussissent.)
- J'aimerais aussi quelque chose qui s'intègre à un outil de couverture de code décent.
- Les bons rapports sont bons, mais pas essentiels.
- Plusieurs mécanismes de notification en cas de problème.
- Je ne suis pas inquiet pour l'hébergement. Je vais l'exécuter sur un serveur local ou sur une instance Amazon.
- En outre, c'est peut-être un gâteau dans le ciel, mais y a-t-il quelque chose qui peut également créer des applications iPhone?
java
continuous-integration
hudson
bamboo
Karthik Ramachandran
la source
la source
Réponses:
Avertissement: je travaille sur Bamboo et je ne vais donc pas commenter les fonctionnalités des autres produits CI car mon expérience avec eux est limitée.
Pour répondre à vos besoins spécifiques:
Bamboo prend en charge directement 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 qui peut lancer votre processus de build.
Bamboo 2.7 prend en charge les étapes de construction, qui vous permettent de diviser votre construction en une étape de test unitaire et une étape de déploiement. Uniquement si l'étape de test unitaire réussit, la génération passera à l'étape de déploiement. Dans Bamboo 3.0, nous prendrons en charge le partage d'artefacts entre les étapes, vous permettant de créer un artefact (par exemple votre guerre) dans la première étape et d'utiliser cet artefact dans les étapes suivantes pour le test et le déploiement.
Bamboo prend en charge Clover et dispose également d'un plugin disponible pour Cobertura .
Bamboo a tout un tas de rapports qui sont sympas, mais pas essentiels :)
Bamboo peut vous avertir par e-mail, RSS, IM, un plugin IDE ou un joli wallboard visible par toute l'équipe.
Par expérience, il est généralement moins cher d'héberger votre propre serveur CI. Mais si vous avez besoin d'évoluer, Bamboo facilite la distribution de vos versions à des agents locaux supplémentaires ou la mise à l'échelle vers Amazon via des agents Elastic.
Semblable à la réponse à votre première question, la plupart des serveurs CI pourront créer des applications iPhone d'une certaine manière. Il est possible qu'un peu plus de scripts soient nécessaires.
Prix: Bamboo n'est pas gratuit (à part notre licence de démarrage gratuite ) / libre / open-source, mais vous obtiendrez le code source de Bamboo si vous achetez une licence commerciale et un support complet. Comparé au coût de la puissance de calcul et de la maintenance potentielle requise pour un serveur CI, le coût d'une licence Bamboo est plutôt faible.
J'espère que cela t'aides.
la source
Je n'ai pas utilisé Bamboo mais j'ai utilisé Hudson, Cruise et TFS et de tous, Hudson était de loin le meilleur. Il est ridiculement facile à configurer et dispose d'une interface graphique Web vraiment sympa pour la configuration du projet. Ce qui est génial avec Hudson, c'est qu'il prend en charge à peu près tous les langages et fonctionnalités que vous pourriez souhaiter en supposant que quelqu'un a écrit un plug-in pour celui-ci, ce qu'ils ont probablement.
http://wiki.hudson-ci.org/display/HUDSON/Plugins
Nous l'avons utilisé pour exécuter des versions .NET, Java et C ++ sur des intervalles chronométrés ainsi que des enregistrements SVN avec des faisceaux de test automatisés et c'était génial. L'endroit où j'ai travaillé avant la dernière fois a commencé le développement de l'iPhone juste avant mon départ et je pense qu'ils utilisaient Hudson pour cela aussi.
De plus, c'est gratuit!
la source
Bamboo vs Hudson, à un niveau très superficiel, semble se résumer à:
Les deux Bamboo et Jenkins ont de nombreux bugs (vous allez rencontrer 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 coincé dans l'attente d'une mise à jour.
la source
Avertissement: je travaille avec Jenkins.
Dans notre organisation (assez grande, plus de 100 développeurs), nous avons également trouvé ces deux fonctionnalités très utiles:
À propos de vos questions:
la source
Eh bien, je n'ai pas utilisé Bamboo jusqu'à présent, mais une différence est que Hudson est un logiciel libre / libre / open source.
la source
Si vous êtes prêt à payer pour cela, Anthill fait tout ce que vous regardez. Nous l'utilisons dans mon entreprise pour notre équipe Web, et c'est assez puissant.
Prêt à l'emploi, il automatise vos scripts existants et gère les artefacts qu'ils produisent quelle que soit la langue.
Le déploiement peut être ajouté en tant qu'étape de votre processus de génération. Je ne suis pas sûr que vous souhaitiez déployer directement en production, mais vous le pourriez certainement si la direction vous le demande.
Ils s'intègrent prêts à l'emploi avec Clover, Cobertura, Emma, Checkstyle, CodeSonar, Coverity, FindBugs, Fortify, Klocwork, PMD et Sonar.
Je ne sais pas quels rapports sont disponibles mais il y a un onglet rapports (je n'y vais pas :-))
Je sais qu'il peut faire des e-mails (et donc des sms), s'intègre à quelques services de messagerie instantanée.
J'ai vu une démo d'entre eux déclenchant une session cloud à partir d'une image, avec un agent pour le déploiement. Nous l'exécutons sur une machine Linux typique, mais je sais que certaines personnes l'exécutent sur un serveur VMWare.
Cela relèverait probablement du premier.
la source