Dreamisle.net Blog

Java, Rails, Security and so many ...

Mettre à Jour Un Sonar Existant

| Comments

Tout d’abord voici un peu listing de nouveautés entre Sonar 1.11.1 et Sonar 2.4.1 (qui représente mon saut de mise à jour)
  • Correction de bugs
  • Supports de nombreux plugins (gwt …)
  • Importante hausse des performances
  • Intégration de WebServices pour interroger sonar à distances
  • Ajout d’une gestion complète des utilisateurs + possibilité de le brancher à un référentiel externe (à étudier dans une prochaine évolution du Sonar OCTO)
  • Coloration syntaxique du code
  • Dashboard customizables
  • Mise en place d’un Update Center pour les plugins
Mes recherches sur la toile ne m’ont pas donné de réponse à comment faire une migration d’une version majeure de sonar à une autre je rédige donc un court article de blog à ce sujet en espérant qu’il aidera.

Si vous êtes amenés à mettre à jour un sonar déjà installé (en version war déployé dans mon cas) vous pourriez vous dire comme moi que changer le war sera suffisant.

Néanmoins ce n’est pas le cas, entre chaque versions la structure des tables de la base de données sonar change.
Dans mon cas il s’agissait de passer de la version 1.11.1 à la version 2.4.1 : une montée de version majeure.
Une première tentative avec le war de la 2.4.1 fut un échec.
Aussi bien en essayant de le faire partir sur une base de donnée existante qu’en tentant de le lancer sur une base vide puis d’insérer les données après.

La démarche est donc bête est méchante : il faut passer progressivement toutes les versions entre votre actuelle et celle que vous voulez atteindre.

En fait chaque version dispose de son propre script de mise à jour de la base de données (fait en rails d’ailleurs donc n’oubliez pas de l’installer sudo apt-get install rails sur un ubuntu/debian).
A chaque nouvelle version déployée appelez l’url : http://votreserveur/sonar/setup et suivez les instructions.
Sachez toutefois que les version 2.3 et 2.4 ne sont pas nécessaires car elles sont buggées, passez directement aux 2.3.1 et 2.4.1.

Personnellement je suis un peu déçu qu’un outil aussi bien fait que Sonar ne dispose pas d’un système de mise à jour plus évolué que ça. Ou bien au moins d’une doc expliquant de quelle version à quelle version il est possible d’upgrader.
Enfin ça ne m’empêchera pas de continuer d’utiliser ce formidable outil de qualimétrie de code qui est devenu indispensable dans mes développements aujourd’hui.