SonarQube Update 7.9

De EjnTricks
Révision de 28 décembre 2019 à 11:25 par Etienne (discussion | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)

Cette mise à jour s'effectue sur le principe de l'installation décrite pour la version 4.4.


Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Dependencies.gif Pré requis

A partir de cette version, la base MySql n'est plus supportée. Dans le cadre de cette installation, une instance PostgreSql est mise en place et les données migrées avant installation, comme décrit dans l'article suivant.

De plus, il est nécessaire d'utiliser une version 11 de Java. Il est possible de modifier l'emplacement de l'exécutable dans le fichier conf/wrapper.conf.

# Path to JVM executable. By default it must be available in PATH.
# Can be an absolute path, for example:
#wrapper.java.command=/path/to/my/jdk/bin/java
#wrapper.java.command=java
wrapper.java.command=/usr/lib/jvm/java-11-openjdk-amd64/bin/java


Download-icon.png Téléchargement

La version est téléchargée dans le répertoire /var/opt/sonarqube.

#sudo wget -O /var/opt/sonarqube/sonarqube-7.9.zip https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-7.9.zip


System-Install-icon.png Installation

Puis il faut décompresser l'archive dans la structure personnalisée sous /var/opt/sonarqube.

#sudo unzip /var/opt/sonarqube/sonarqube-7.9.zip -d /var/opt/sonarqube
#sudo mv /var/opt/sonarqube/sonarqube-7.9 /var/opt/sonarqube/7.9

Le fichier téléchargé peut être supprimé.

#sudo rm /var/opt/sonarqube/sonarqube-7.9.zip


Icon File Owner.png Propriétaire fichiers

L'installation a été réalisée avec le compte root. Il est préférable de donner la propriété au compte de service, soit sonar dans le cadre de cette installation.

#sudo chown -R sonar:sonar /var/opt/sonarqube/7.9


Icon ACL.png Sécurisation

Après avoir modifié le propriétaire des fichiers, il est conseillé de positionner des droits restrictifs afin que seul le propriétaire puisse accéder à ceux-ci.

#sudo chmod -R go-rwx /var/opt/sonarqube/7.9


Run-icon.png Script démarrage

La modifications dans le script de démarrage, fichier /var/opt/sonarqube/7.9/bin/linux-x86-64/sonar.sh, doit permettre de spécifier l'emplacement du fichier PID. Il est modifié ainsi.

# Location of the pid file.
#PIDDIR="."
PIDDIR="/run/sonarqube"

La création du répertoire est gérée lors du démarrage du service, comme décrit lors de l'installation du service.


Icon-log.png Fichiers log

Par défaut, les logs sont placés dans le répertoire logs de l’instance SonarQube :

  • /var/opt/sonarqube/7.9/logs/sonar.log
  • /var/opt/sonarqube/7.9/logs/access.log

La définition de ces emplacements se situe dans différentes configurations.

  • Fichier conf/wrapper.conf les écritures du wrapper dans les fichiers sonar.log
#********************************************************************
# Wrapper Logs
#********************************************************************

wrapper.console.format=PM
wrapper.console.loglevel=INFO
wrapper.logfile=../../logs/sonar.log
wrapper.logfile.format=M
wrapper.logfile.loglevel=INFO
  • Fichier conf/sonar.properties pour sonar.log et access.log
# Path to log files. Can be absolute or relative to installation directory.
# Default is <installation home>/logs
#sonar.path.logs=logs


Afin de centraliser les logs, les messages sont redirigés vers /var/log/sonarqube en mettant en place des liens symboliques. Ceci permet de ne pas modifier les fichiers de configurations, limitant les modifications lors des futures montées de version. Le répertoire /var/opt/sonarqube/7.9/logs existe déjà et sera supprimé. Du fait de cette organisation, utilisation d'un répertoire common, un répertoire /var/opt/sonarqube/common/logs sera créé lors du démarrage. Pour ce dernier, le lien est préalablement créé.

#sudo rm -rf /var/opt/sonarqube/7.9/logs
#sudo ln -s /var/log/sonarqube /var/opt/sonarqube/7.9/logs
#sudo chown -h sonar:sonar /var/opt/sonarqube/7.9/logs

Attention, contrairement aux précédentes versions, le répertoire logs n'était pas vide.


Icon-Configuration-Settings.png Paramétrages

Les fichiers de paramétrages ont été légèrement modifiés depuis la précédente version. Les fichiers de la distribution sont alors placés dans le répertoire externalisé, soit /var/opt/sonarqube/common/conf dans le cadre de cette installation.

#sudo rm /var/opt/sonarqube/common/conf/*
#sudo cp -p /var/opt/sonarqube/7.4/conf/* /var/opt/sonarqube/common/conf/

Attention, il faut que l'instance soit arrêtée.

#sudo systemctl stop sonarqube


Share-icon.png Fichiers communs

Les liens vers les fichiers communs sont mis en place.

#sudo rm -rf /var/opt/sonarqube/7.9/conf
#sudo ln -s /var/opt/sonarqube/common/conf /var/opt/sonarqube/7.9/conf
#sudo chown -h sonar:sonar /var/opt/sonarqube/7.9/conf
#sudo rm -rf /var/opt/sonarqube/7.9/data
#sudo ln -s /var/opt/sonarqube/common/data /var/opt/sonarqube/7.9/data
#sudo chown -h sonar:sonar /var/opt/sonarqube/7.9/data
#sudo rm -rf /var/opt/sonarqube/7.9/temp
#sudo ln -s /var/opt/sonarqube/common/temp /var/opt/sonarqube/7.9/temp
#sudo chown -h sonar:sonar /var/opt/sonarqube/7.9/temp


Plugin-icon.png Plugins

Il est nécessaire de recopier les plugins additionnels dans le répertoire extensions/plugins.


Run-icon.png Exécution

Lors de l'installation de SonarQube en service, un lien /var/opt/sonarqube/installed a été mis en place pour pointer sur la version à activer. Des liens ont également été mis en place depuis /var/opt/sonarqube/common vers /var/opt/sonarqube/installed. Ainsi, en modifiant le lien installed, ceux-ci seront automatiquement activés sans aucune modification nécessaire.

#sudo rm /var/opt/sonarqube/installed
#sudo ln -s /var/opt/sonarqube/7.9 /var/opt/sonarqube/installed
#sudo chown -h sonar:sonar /var/opt/sonarqube/installed

Il suffit de relancer le service pour la prise en compte de la mise à jour.

#sudo systemctl start sonarqube


Icon-database-process.png Mise à jour de la base

Une mise à jour de la base de données est nécessaire pour cette version, ce qui est indiqué dans la trace d'exécution, fichier /var/log/sonarqube/sonar.log. Dans le cadre de cette instance sous PostgreSql, le compte est propriétaire de la base et il n'est pas nécessaire de modifier les permissions du compte.

################################################################################
      The database must be manually upgraded. Please backup the database and browse /setup. For more information: https://docs.sonarqube.org/latest/setup/upgrading
################################################################################

Celle-ci se déclenche en accédant à l'URL http://SERVER/setup.

La page offre la possibilité de mettre à jour la base de données.


Il suffit de cliquer sur le bouton Upgrade. Une fenêtre d'attente est alors affichée. Une fois la mise à jour terminée, la page est rafraîchie sur la page d'accueil.


En fin de mise à jour, un message de succès est affiché.


Viewer icon.png Voir Aussi

Upgrade Notes: https://docs.sonarqube.org/7.9/setup/upgrade-notes/