Quelques outils...

Apache Continuum

Continuum est le logiciel d'intégration continue tout droit venu de la fondation Apache.

Il comporte les fonctionnalités suivantes :

Continuum

Installation & configuration

Cet outil peut être installé sur un conteneur d'application de type Tomcat ou Jetty ou directement en le lançant dans une console java avec son propre serveur d'application intégré. Il nécessite une configuration assez délicate car il faut le connecter manuellement à une base de données contrairement à d'autre outil qui le font automatiquement via leur propre base intégrée. Pour cela il faut configurer tous les connecteurs JDBC selon le modèle de base présent. Il faut la créer et configurer le fichier server.xml au préalable avant de lancer l'instance Continuum.

Ensuite il faut utiliser l'interface de gestion pour créer les différents jobs et comptes de services à utiliser.

Admin console
Fig1: 1ère connexion

Configuration
Fig2: Configuration

Ajout de projet
Fig3: Ajout de projet - création d'un job.

Les points forts

L'ajout et la création de job est très bien détaillée. On retiendra surtout la facilité de l'utilisation des outils de build étant donné que les plus utilisés : ANT et MAVEN proviennent d'Apache. Il y a la possibilité de configurer des templates de job, chose qui est rare chez les autres éditeurs.

Les points faibles

Bien que la configuration soit détaillée sur le site d'Apache.org, l'outil n'est pas aussi simple à mettre en place que ceux provenant d'autres éditeurs.
La communauté est assez faible en ce qui concerne les plugins, là où celle de Jenkins est forte et complète.

En conclusion

Malgré que l'outil soit agréable à utiliser, il est assez limité au niveau des plugins et c'est ce qui fait qu'il n'est pas aussi populaire que son homologue Jenkins.

Jenkins

Jenkins est l'outil d'intégration continue gratuit le plus répandu actuellement.

Jenkins

Originellement, ce logiciel a été créé par Kohsuke Kawaguchi en 2008 sous le nom de Hudson et était hébergé sur la plate-forme java.net. Suite à l’acquisition de Sun par Oracle, certains désaccords et incidents ont conduit le fondateur à migrer et renommer le projet sous le nom de Jenkins en 2011.

Il comporte les fonctionnalités suivantes :

Installation & configuration

Pour ce qui est de l'installation et de la configuration: elle est plus rapide et facile à mettre en place qu'Apache Continuum. Il est possible de l'ajouter à notre conteneur web grâce au fichier .war. Sinon tout comme continuum, il possède sa propre instance de serveur d'application qu'on peut lancer avec la console Java.

Le menu d'accueil est assez épuré et très simple à comprendre. Il ne faut que quelques minutes pour le prendre en main. Il n'y pas vraiment besoin de consulter la documentation sur le site de jenkins car tout est relativement intuitif.

Dashboard
Fig1: Dashboard

Pour ce qui est de la création d'un job là encore tout est très bien détaillé. On retiendra surtout la grande diversité d'option disponible avec les plugins que la communauté apporte.

Ajout de projet
Fig2: Ajout de projet - création d'un job.

L'installation de plugins est encore plus simple que les autres fonctionnalités. Il suffit de cocher le plugin à installer parmis une liste automatiquement mise à jour. Il suffit juste ensuite de redémarrer si souhaité, la plateforme et le tout est ok.

Plugin
Fig3: Plugin Chuck Norris

Historique
Fig4: historique des builds

Les points forts

L'ajout et la création de job est très bien détaillée. On retiendra surtout la facilité d'ajout de plugins et d'une communauté très active qui propose un grand nombre de plugins.

Les points faible

Le changement trop rapide de version peut parfois entrainer des instabilités avec certains plugins qui n'ont pas encore été mis à jour. Bien que la mise à jour soit simple à appliquer, il vaut mieux posséder une instance de test afin d'observer le comportement général de la plateforme.

En conclusion

Jenkins est aujourd'hui l'outil d'intégration continue le plus populaire grâce à ses nombreux plugins ou la possiblité de les créer. Il est aussi possible de forker le projet avec les sources disponibles sur Github afin de posséder sa propre instance personnalisée. Ces éléments sont un réel atout. Ce qui en ont fait son succès.

la suite...