L’in­té­gra­tion continue (IC) permet aux dé­ve­lop­peurs de logiciels d’éluder la phase d’in­té­gra­tion chro­no­phage et complexe nor­ma­le­ment né­ces­saire en fin de projet. Au lieu d’attendre le dernier moment pour regrouper les dif­fé­rents éléments, avec l’in­té­gra­tion continue, chaque nouveauté est di­rec­te­ment intégrée dans le code de base. Cela demande de la dis­ci­pline et des processus efficaces ; dans le cas contraire, l’IC devient plus un frein qu’une aide. Des logiciels dé­ve­lop­pés spé­cia­le­ment dans ce but sim­pli­fient l’in­té­gra­lité de ce processus.

Conseil

Si vous n’êtes pas encore sûr de faire le choix de l’IC pour vous et votre équipe, vous trouverez toutes les in­for­ma­tions ainsi qu’un com­pa­ra­tif des avantages et des in­con­vé­nients dans notre article détaillé sur l’in­té­gra­tion continue.

Qu’ils soient utilisés de façon en­tiè­re­ment in­dé­pen­dante ou en com­bi­nai­son avec d’autres ap­pli­ca­tions connues, les outils IC apportent une aide bienvenue dans la mise en place d’un dépôt, dans la phase de test, la phase de cons­truc­tion ainsi que dans la gestion des versions et na­tu­rel­le­ment dans l’in­té­gra­tion continue à pro­pre­ment parler.

8 outils IC po­pu­laires

Aujourd’hui, on trouve de nombreux outils d’in­té­gra­tion continue dif­fé­rents sur Internet. Ils ont tous vocation à aider les dé­ve­lop­peurs dans la mise en œuvre de l’in­té­gra­tion continue et y par­vien­nent de dif­fé­rentes façons avec des fonc­tion­na­li­tés bien spé­ci­fiques. Mais les outils IC ne se dis­tin­guent pas uni­que­ment par l’étendue de leurs fonc­tion­na­li­tés, on constate également de grandes dif­fé­rences en termes de prix et licence. Alors que bon nombre d’entre eux sont des logiciels open source dis­po­nibles gra­tui­te­ment, certaines fa­bri­cants proposent également des outils payants. Nous vous proposons un aperçu des pro­grammes les plus appréciés et vous pré­sen­tons leurs ca­rac­té­ris­tiques et leurs fonc­tion­na­li­tés.

Jenkins

Le logiciel Jenkins est pro­ba­ble­ment l’un des outils IC les plus connus sur le marché. Depuis 2005 (à l’époque sous le nom de Hudson), le logiciel a été cons­tam­ment amélioré. Aujourd’hui, ce logiciel programmé sous Java offre de nom­breuses fonc­tion­na­li­tés et in­ter­faces con­tri­buant à faciliter non seulement l’in­té­gra­tion continue, mais aussi la livraison et le dé­ploie­ment continus.

  • programmé sous Java
  • fonc­tionne dans un conteneur d’EJB
  • plus de 1 000 plugins
  • supporte également la livraison et le dé­ploie­ment continus
  • peut être combiné avec de nombreux systèmes de contrôle de version
  • contrôle via IGU (basée sur le Web), API REST ou commandes
  • hé­ber­ge­ment sur le Cloud possible
  • gratuit
  • open source (licence MIT)

Travis CI

Les personnes tra­vail­lant avec GitHub pré­fé­re­ront cer­tai­ne­ment Travic CI, car cet outil CI fonc­tionne par­fai­te­ment avec ce système de gestion des versions populaire. Le logiciel est pa­ra­mé­trable à l’aide d’un simple fichier YAML hébergé dans le ré­per­toire racine du projet de dé­ve­lop­pe­ment. GitHub informe Travis CI de chaque mo­di­fi­ca­tion apportée dans le dépôt et maintient toujours le projet à jour.

  • programmé sous Ruby
  • fonc­tionne sur toutes les pla­te­formes
  • fonc­tionne avec GitHub
  • con­fi­gu­ra­tion à l’aide d’un fichier YAML
  • gratuit pour les projets open source
  • Pour les projets com­mer­ciaux, coût compris entre 69 $ et 489 $ par mois
  • open source (licence MIT)

Bamboo

La société Atlassian, qui propose également aujourd’hui le service d’hé­ber­ge­ment de fichiers Bitbucket, distribue depuis 2007 l’outil d’in­té­gra­tion continue Bamboo. À l’instar de Jenkins, Bamboo assiste les dé­ve­lop­peurs dans l’in­té­gra­tion mais offre également des fonc­tion­na­li­tés pour le dé­ploie­ment et la gestion des versions. Le travail avec cet outil s’effectue via une interface en ligne simple.

  • programmé sous Java
  • fonc­tionne sur toutes les pla­te­formes
  • in­té­gra­tion simple d’autres produits Atlassian
  • grande quantité d’ex­ten­sions
  • plusieurs tests possibles en si­mul­ta­née
  • com­mu­ni­ca­tion via une interface Web et API REST
  • gratuit pour les projets open source, les or­ga­ni­sa­tions à but non lucratif et les classes scolaires
  • pour toute autre uti­li­sa­tion, coût unique entre 10 $ et 110 000 $ en fonction du nombre de serveurs utilisés

GitLab CI

GitLab CI est une com­po­sante du célèbre système de gestion des versions GitLab. En plus de l’in­té­gra­tion continue, GitLab offre un dé­ploie­ment et une livraison continus. Tout comme pour Travis CI, la con­fi­gu­ra­tion de GitLab CI s’effectue via un fichier YAML. Par rapport à d’autres outils, le travail avec ce logiciel est également plus facile à d’autres égards.

  • com­po­sante de GitLab
  • programmé sous Ruby et Go
  • con­fi­gu­ra­tion à l’aide d’un fichier YAML
  • supporte également la livraison et le dé­ploie­ment continus
  • Open Core
  • auto-hé­ber­ge­ment et hé­ber­ge­ment sur le cloud dis­po­nibles
  • la version gratuite dispose uni­que­ment de quelques fonc­tion­na­li­tés
  • le coût des autres versions est compris entre 4 $ et 99 $ par mois et par uti­li­sa­teur

Circle CI

b2l4zTS8lPg.jpg Pour afficher cette vidéo, des cookies de tiers sont nécessaires. Vous pouvez consulter et modifier vos paramètres de cookies ici.

L’outil d’in­té­gra­tion continue CircleCI fonc­tionne par­fai­te­ment avec GitHub et Bitbucket. Pour la phase de test, un conteneur ou une machine virtuelle sont utilisés. CircleCI accorde une grande im­por­tance à des processus de dé­ve­lop­pe­ment fluides, sans heurts, ce qui permet de mettre au­to­ma­ti­que­ment à dis­po­si­tion des builds exempts d’erreur pour d’autres en­vi­ron­ne­ments.

  • con­fi­gu­ra­tion à l’aide d’un fichier YAML
  • supporte également le dé­ploie­ment continu
  • auto-hé­ber­ge­ment et hé­ber­ge­ment sur le cloud dis­po­nibles
  • fonc­tionne dans des con­te­neurs Docker, sous Linux VMs et MacOS VMs
  • gratuit pour un conteneur
  • autrement, coût compris entre 50 $ et 3 150 $ par mois

Crui­se­Con­trol

L’outil Crui­se­Con­trol fait partie des plus anciennes ap­pli­ca­tions proposant une in­té­gra­tion continue. Cet outil a été introduit sur le marché dès 2001 et a été cons­tam­ment amélioré depuis, notamment par Martin Fowler qui est l’un des pionniers dans le domaine de l’in­té­gra­tion continue. Outre un tableau de bord clair, les dé­ve­lop­peurs disposent également de nombreux plugins fa­ci­li­tant leur travail.

  • programmé sous Java
  • fonc­tionne sur toutes les pla­te­formes
  • tableau de bord basé sur le Web
  • des versions pour Ruby (Crui­se­Con­trol.rb) et .NET (Crui­se­Con­trol.NET) sont dis­po­nibles
  • open source (licence BSD)
  • gratuit

Codeship

L’outil IC Codeship ap­par­tient aujourd’hui à CloudBee qui dispose également de Jenkins dans son por­te­feuille. Ce programme est dis­po­nibles en deux versions : la version de base offre une interface Web facile d’uti­li­sa­tion alors que la version pro est con­fi­gu­rée à l’aide de fichiers dans le dépôt. Les dé­ve­lop­peurs sou­hai­tant tra­vail­ler avec un conteneur Docker devront opter pour la version pro.

  • interface Web dans la version de base
  • fichiers de con­fi­gu­ra­tion dans le dépôt pour la version pro
  • Docker supporté dans la version pro
  • gratuit pour 100 builds par mois en cas de pipeline test
  • coût compris entre 75 $ et 1 500 $ par mois

TeamCity

Le logiciel TeamCity séduit avant tout par ses « gated commits » : grâce à ces derniers, TeamCity teste les mo­di­fi­ca­tions apportées au code avant même qu’elles ne soient insérées dans la mainline. Le code source est uni­que­ment intégré au code base pour toute l’équipe lorsqu’il est exempt d’erreur. TeamCity effectue les tests de façon autonome en arrière-plan de telle sorte que les dé­ve­lop­peurs peuvent pour­suivre leur travail dans l’in­ter­valle.

  • programmé sous Java
  • fonc­tionne sur toutes les pla­te­formes
  • Gated Commits
  • gratuit pour 100 builds avec 3 agents de build
  • coût unique compris entre 299 € et 21 999 €
  • 50 % de remise pour les start-ups et gratuit pour les projets open source

Tableau ré­ca­pi­tu­la­tif : les outils d’in­té­gra­tion continue en un coup d’œil

Tous les outils IC pré­sen­tent des avantages et des in­con­vé­nients. À l’aide du tableau ré­ca­pi­tu­la­tif ci-dessous, vous pourrez iden­ti­fier en un coup d’œil les pro­grammes sus­cep­tibles de vous convenir. Vous pourrez ainsi voir di­rec­te­ment si le service supporte également la livraison continue ou propose un hé­ber­ge­ment sur le cloud.

  dé­ploie­ment continu supporté hé­ber­ge­ment sur le Cloud licence prix pour l’offre payante version gratuite par­ti­cu­la­rité
Jenkins ✓ ✓ MIT - ✓ nombreux plugins
Travis CI ✗ ✓ MIT 69–489 $ par mois ✓ connexion directe à GitHub
Bamboo ✓ ✓ pro­prié­taire coût unique de 10-110 000 $ ✓  
GitLab CI ✓ ✓ MIT/EE 4-99 $ par mois ✓ connexion directe avec d’autres produits Atlassian
Circle CI ✓ ✓ pro­prié­taire 50-3 150 $ par mois ✓ uti­li­sa­tion simple
Crui­se­Con­trol ✗ ✗ BSD - ✓ en­tiè­re­ment gratuit
Codeship ✓ ✓ pro­prié­taire 75-1 500 $ par mois ✓ version de base et pro
TeamCity ✓ ✗ pro­prié­taire coût unique de 299-21 999 € ✓ Gated Commits
Aller au menu principal