SonarQube – Installation sur Debian 8 Jessie
Votez !

Mémo pour installer SonarQube sur Debian 8 Jessie.

Pré-requis

Pour Java, voir les mémo « Linux – Télécharger Oracle Java avec wget sous Debian » et « Installer Oracle Java 8 sous Debian 7 Wheezy« .
Ça marche aussi pour Debian 8 Jessie.

A la rédaction de ce mémo, c’est Java 1.8.0 111 :

Installation

Télécharger SonarQube en utilisant les liens directs sur leur site :
http://www.sonarqube.org/downloads/

Pour ce mémo, j’ai utilisé la version 5.6.3.

Décompresser l’archive dans le répertoire /opt

Éditer le fichier /opt/sonarqube-5.6.3/conf/sonar.properties et modifier ces lignes :

MySQL

Créer un utilisateur « sonar » avec le mot de passe « sonar » et une base de données « sonar ».
Utiliser phpMyAdmin pour créer l’ensemble en une fois.
« Utilisateur > Ajouter un utilisateur »
Cocher la case « Créer une base portant son nom et donner à cet utilisateur tous les privilèges sur cette base. ».

Première exécution

Pour lancer SonarQube, il faut utiliser le script correspondant à votre environnement.
Dans mon cas il se trouve dans : /opt/sonarqube-5.6.3/bin/linux-x86-64

Dans la session ssh, effectuer un « tail -f » sur le fichier /opt/sonarqube-5.6.3/logs/sonar.log.
Cela permettra de vérifier que SonaQube se connecte bien à la base de données MySQL et installe les tables.
A vérifier également dans phpMyAdmin.

Pour arrêter SonarQube :

Premier accès

Dans mon cas, j’ai utilisé une box Vagrant avec le port 9000 mappé.

Donc dans mon navigateur, j’utilise cette url : http://localhost:9000

Le dashboard s’affiche au bout de quelques dizaines de secondes la première fois.
Le temps pour SonarQube d’initialiser la base de données.

La connexion par défaut est admin avec le mot de passe admin.

SonarQube en tant que service

Je vais un peu adapter la documentation de SonarQube.
Disponible ici : http://docs.sonarqube.org/display/SONAR/Running+SonarQube+as+a+Service+on+Linux

Créer le fichier /etc/init.d/sonar :

Créer un lien symbolic :

Rendre le fichier /etc/init.d/sonar exécutable :

Enregistrer le service :

Relancer la machine pour tester le démarrage automatique.

Du coup, on peut utiliser Systemd pour gérer le service :

Résultat :

Mais aussi :

Reste à installer « SonarQube Scanner 2.8 ».
Voir la documentation officielle : http://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner