Compiler un projet en Java sur GitHub avec VSO

Récemment chez un client nous avons dû faire un patch sur le plugin LDAP pour SonarQube. Bien que nous ne soyons pas des développeurs Java la mise à jour du code n’a pas été trop compliquée. Par contre s’est posée la problématique de la compilation Java avec Maven, nous ne sommes pas des spécialistes et nous ne voulions pas non plus passer trop de temps pour mettre en place les composants nécessaires.

La solution : utiliser Visual Studio Online !

Je vais vous expliquer comment nous avons mis en place une build Java/Maven dans VSO branché sur GitHub en 10 minutes sans installer quoi que ce soit !

Repository Git

Dans notre cas le code source se trouve dans un repository Git sur GitHub, il faut donc faire un fork de ce repository pour pouvoir le modifier. Rien de plus simple dans GitHub :

  1. on se connecte à son compte,
  2. on se connecte au repository,
  3. on clique sur Fork

SNAGHTML41c9e56

Build VSO

La suite se passe dans VSO. Il va falloir créer un projet (ou utiliser un projet existant) et une définition de build. Je vais supposer que vous savez créer un projet et passer directement à la création et configuration de la définition de build.

Connexion VSO / GitHub

Avant toute chose nous allons créer dans VSO une nouvelle connexion pour pouvoir se connecter à GitHub. Pour cela :

  1. Allez dans l’interface d’administration,
  2. Cliquez sur l’onglet Services,
  3. Cliquez sur le bouton New Service Endpoint,
  4. Cliquez sur GitHub

SNAGHTML42ca78f

Dans la fenêtre de connexion il faudra spécifier le type d’autorisation (je vous conseille d’utiliser un personal access token) et le nom de la connexion :

SNAGHTML42f0b12

Définition de build

Il faut maintenant créer une nouvelle définition de build. Pour cela :

  1. Cliquez sur l’onglet BUILD
  2. Cliquez sur le bouton +
  3. Dans la fenêtre de choix de template, sélectionnez Empty
  4. Cliquez sur le bouton Next

SNAGHTML423641a

Dans la fenêtre des settings :

  1. Sélectionnez GitHub pour le repository,
  2. Sélectionnez Hosted comme type d’agent (pour ne rien avoir à installer)
  3. Cliquez sur Create

SNAGHTML4258f37

La définition de build est créée et il va maintenant falloir la configurer en lui spécifiant le repository GitHub ou aller chercher les sources et en ajoutant les différentes tâches que l’on souhaite faire faire à notre build.

Commençons par spécifier le repository GitHub. Pour cela :

  1. Cliquez sur l’onglet Repository,
  2. Sélectionnez la connexion GitHub que vous avez créée précédemment,
  3. Sélectionnez le repository contenant le code source,
  4. Sélectionnez la branche à compiler

SNAGHTML4389bae

Nous allons maintenant ajouter les tâches de build et là c’est très simple il n’y en a que 2 à mettre.

  1. Cliquez sur l’onglet Build,
  2. Cliquez sur le bouton Add build step,
  3. Dans la fenêtre des tâches, cliquez sur le bouton Add devant Maven et Publish Build Artifacts (dans cet ordre !).

SNAGHTML43b9585

Nos tâches sont maintenant ajoutées au process de build, il ne nous reste plus qu’à les configurer.

La tâche Maven va s’occuper de compiler le fichier .jar. Pour cela, nous allons simplement choisir le fichier pom.xml à utiliser. Vous pouvez soit taper directement son chemin depuis la racine du repository soit utiliser la fenêtre de sélection :

SNAGHTMLe31b80e

La deuxième tâche va nous permettre de spécifier les fichiers qu’il faudra envoyer à VSO comme artefact de build. Pour cela il faut avoir une petite connaissance de la structure des répertoires une fois la compilation finie. Ensuite il suffit juste de renseigner les champs :

  1. Indiquez le répertoire racine dans lequel chercher les fichiers,
  2. Indiquez les filtres à utiliser pour sélectionner les fichiers sous le répertoire racine. Vous pouvez spécifier un filtre par ligne et utiliser les caractères spéciaux * et **,
  3. Indiquer le nom de votre artefact,
  4. Indiquer ou sera stocké l’artefact, dans notre cas on choisira Server pour qu’il soit stocké directement sur VSO.

SNAGHTMLe3811d9

Voilà ! Il ne reste plus qu’à sauver la définition en lui donnant un nom et la lancer !

SNAGHTMLe3bee5f

Une fois la build finie, on peut voir le résultat sur l’écran de build (vous remarquez que l’on a même les résultats des tests unitaires) et accéder à notre artefact via l’onglet Artifacts :

SNAGHTMLe3e193e

Et voilà comment en 10 minutes vous pouvez compiler du Java hébergé sur GitHub (ou un autre repository supporté par VSO) sans avoir à installer quoi que ce soit 🙂

Tags: Build, Github, Java, VSO,

Pas de commentaire

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *