Developpez.com - Rubrique ALM

Le Club des Développeurs et IT Pro

Pipelines : quand l'intégration et la livraison en continu s'invitent dans Bitbucket

Par Hinault Romaric

Le 09/01/2017, par Hinault Romaric, Responsable .NET
J’ai reçu il y a de cela quelques jours un message électronique de la part d’Atlassian, la firme responsable du développement de la solution de contrôle de versions Bitbucket, m’informant de l’intégration d’un nouvel outil au sein de leur plateforme.


Il s’agit de Pipelines. Ce dernier permet d’ajouter avec facilité l’intégration continue dans un projet hébergé sur Bitbucket Cloud. Son activation se fait en quelques étapes seulement. Il suffit de télécharger sur Bitbucket un template du fichier bitbucket-pipelines.yml, l’éditer pour faire correspondre aux besoins de son projet, et ensuite le commiter sur bitbucket.

Par exemple, pour mon projet ASP.NET Core qui dispose d’un projet de test unitaire avec MsTest V2, le contenu du fichier bitbucket-pipelines.yml est le suivant :

Code yml :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# This is a sample build configuration for .NET Core. 
# Check our guides at https://confluence.atlassian.com/x/VYk8Lw for more examples. 
# Only use spaces to indent your .yml configuration. 
# ----- 
# You can specify a custom docker image from Docker Hub as your build environment. 
image: microsoft/dotnet:onbuild 
 
pipelines: 
  default: 
    - step: 
        script: # Modify the commands below to build your repository. 
          - dotnet restore 
          - dotnet build src/SampleApp 
          - dotnet test src/SampleApp.Test

Désormais, à chaque modification de mon code, une build automatique de mon projet est lancée et les tests unitaires sont exécutés :



Le résultat de la build est également disponible dans la liste des commits. Ce qui permet de rapidement identifier le commit dont l’opération de build a échoué.

Pipelines permet également de mettre en place la livraison continue. Il peut être configuré pour déployer vos applications sur Microsoft Azure, Amazon Web Services, Google Cloud Platform, le gestionnaire de packages npm et bien plus.

Pipelines est simple et pratique pour rapidement ajouter l’intégration continue à un projet hébergé sur Bitbucket. L’exécution de la solution dans le Cloud (toutes les tâches sont exécutées dans les infrastructures d’Atlassian) offre rapidité et haute disponibilité. Cependant, comparé à un serveur d’intégration continue comme TeamCity, il lui manque encore des fonctionnalités.

Pour l’instant, l’outil est gratuit, mais devrait devenir payant à partir de 2017.
  Billet blog