Concourse CI : une alternative à Jenkins (gratuit)

Concourse CI : une alternative à Jenkins (gratuit)

Sur le terrain des outils d'intégration et de déploiement continus open source, Jenkins, bien que populaire, n'en reste pas moins complexe à prendre en main.... à la différence de Concourse CI.

Concourse CI : c'est quoi ?

Concourse CI est un outil open source d’intégration et de déploiement continus (CI/CD). A ce titre, il est conçu pour permettre l’automatisation des tests et du déploiement d'une application.

Comment installer Concourse CI ?

Commencer par télécharger les derniers fichiers d'installation, à partir de GitHub.com/concourse. Choisir ensuite le répertoire cible selon votre système d’exploitation puis procéder à l’extraction de fichiers :

  • concourse/bin/concourse
  • concourse/bin/gdn # on Linux
  • concourse/fly-assets/...
  • concourse/resource-types/... # on Linux

Sur Linux, installez dans l’emplacement /usr/local/concourse : tar -zxf concourse-*.tgz -C /usr/local. A partir de là, ajoutez /usr/local/concourse/bin à $PATH, ou tout simplement exécutez directement /usr/local/concourse/bin/concourse.

Alternativement vous pouvez simplement utiliser docker-compose pour exécuter rapidement Concourse :

  • $ wget https://concourse-ci.org/docker-compose.yml
  • $ docker-compose up -d
  • Creating docs_concourse-db_1 ...
  • Creating docs_concourse-db_1 ... done
  • Creating docs_concourse_1 ...
  • Creating docs_concourse_1 ... done

Concourse CI Fly

Fournissant une interface en ligne de commande à Concourse, Fly permet d’exécuter un certain nombre de tâches. Par exemple, il peut charger une nouvelle configuration d'un pipeline dans Concourse en cours d'exécution. La première étape pour commencer à utiliser Concourse est d'installer l'outil CLI Fly. Vous pouvez télécharger Fly depuis n'importe quelle installation Concourse.

Concourse CI API

Councourse CI possède une interface de programmation (API) qui peut afficher tous les pipelines en cours. Concourse API peut retourner l'état des pipelines d'une équipe dans un format compatible avec des outils comme CCMenu en procédant ainsi : /api/v1/teams/{team}/cc.xml.

Concourse API prend également en charge le retour des badges SVG indiquant :

  • le statut d'un projet : /api/v1/teams/{team}/pipelines/{pipeline}/jobs/{job}/badge
  • ou celui d’un pipeline entier : /api/v1/teams/{team}/pipelines/{pipeline}/badge.

Tutoriel : quelques liens

Apprenez l’essentiel sur Concourse CI sur le site officiel du projet open source concourse-ci.org.

Concourse CI vs Jenkins

Jenkins est l’un des outils d’intégration et de déploiement continus les plus populaires, notamment du fait qu’il peut être utilisé à la fois sur Windows, MacOS X et d’autres systèmes d’exploitation Unix. Développé avec Java, il fournit plus de 300 plugins, permettant de construire et de tester les projets. Bien que gratuit, il peut engendrer des coûts du fait de son exigence en matière de serveurs dédiés. Concourse CI est plus facile à installer et à configurer, même s’il offre moins de possibilités de personnalisation. Il permet une gestion plus simple des projets en parallèle grâce à son système de pipelines un peu plus développé que celui de Jenkins.