Archives de l’auteur : Jean-Pierre FAYOLLE

À propos Jean-Pierre FAYOLLE

Freelance consultant, blogger.

Analyse PL/SQL avec SonarQube – Evaluer la qualité (1/3)

PLSQL_EvaluationQualité1Un post en guise de synthèse, pour cette série sur l’analyse de code PL/SQL avec SonarQube.

Après avoir configuré notre analyse avec Jenkins, nous avons lancé celle-ci et constaté 17 infractions bloquantes (Blockers) mais zéro défaut critique (Critical) avec le Quality Profile par défaut de SonarQube. En fait, les 5 règles Critical existantes étaient désactivées, ainsi que certaines des autres règles de différentes criticités : 58 sur un total de 132. Continuer la lecture

Analyse PL/SQL avec SonarQube – Majors

PLSQL_MajorsNous continuons cette série sur l’analyse de code PL/SQL, avec aujourd’hui les règles de type Major.

Nous avons vu précédemment comment organiser notre environnement et configurer notre analyse de code avec Jenkins et SonarQube.

Nous avons créé notre propre Quality Profile, puis examiné les règles de type Blockers et Criticals, toutes orientées Robustesse (Reliability) et Sécurité. Continuer la lecture

Analyse PL/SQL avec SonarQube – Criticals

PLSQL_CriticalDans le post précédent de cette série sur l’analyse de code PL/SQL avec SonarQube, nous avons examiné les régles Blockers existantes dans notre Quality Profile.

Nous avons rencontré à cette occasion 3 violations aux ‘best practices’ de programmation PL/SQL dont les conséquences sont d’une gravité telle qu’aucune tolérance n’est envisageable pour celles-ci. Ce qui justifie donc leur statut de ‘Blockers’.

Nous avons également constaté un total de 18 défauts pour ces 3 règles, donc ce nombre limité nous laisse supposer que celles-ci sont connues de l’équipe de projet

Enfin, ces défauts ont pour conséquence un bug de logique applicative dans l’application – une opération qui ne sera jamais effectuée car la condition correspondante ne sera jamais rencontrée – voire un crash pur et simple. Continuer la lecture

Analyse PL/SQL avec SonarQube – Blockers

PLSQL_BlockersCriticalDans le post précédent, nous avons créé notre propre Quality Profile PL/SQL en activant toutes les règles existantes dans SonarQube, au nombre de 132. Puis nous avons ensuite relancé l’analyse créée précédemment.

Nous allons ainsi pouvoir travailler avec l’ensemble des règles du Quality Profile par défaut de SonarQube et sélectionner celles qui nous intéressent afin de créer un tableau de bord ‘PL/SQL’ pour notre environnement de démo. Continuer la lecture

Analyse PL/SQL avec SonarQube – Le Quality Profile PL/SQL

SonarQubePLSQL3Après avoir configuré notre première analyse PL/SQL depuis Jenkins, nous avons lancé celle-ci, et nous pouvons donc maintenant regarder les résultats dans le tableau de bord SonarQube.

Ceci sera l’occasion d’examiner et d’expliciter dans nos prochains posts, les règles proposées par SonarQube en matière de bonnes pratiques de programmation PL/SQL. Mais tout d’abord, regardons ce que nous propose le ‘profile’ PL/SQL de SonarQube. Continuer la lecture

Analyse PL/SQL avec SonarQube – Configuration

SonarQubePLSQL2Nous avons vu, dans le premier post de cette série sur l’analyse de code PL/SQL avec SonarQube, comment j’organise mon environnement d’analyse, avec :

  • un dossier C:\SRC\ contenant tous les projets,
  • un sous-répertoire dédié au projet,
  • différents sous-répertoires dont un ‘..\Source’ avec le code source à analyser.

Dans le cas de notre analyse PL/SQL, ce code se trouvera donc dans un dossier ’C:\SRC\Demo\PLSQL\Source’.

Voyons maintenant comment créer et configurer une analyse SonarQube de ce code, avec Jenkins. Continuer la lecture

Upgrade SonarQube-Runner et Jenkins

JenkinsUpgradeJ’ai mis à jour ma version de SonarQube dans le post SonarQube Upgrade 4.0, ce qui nous a donné l’opportunité de documenter quelques erreurs rencontrées.

J’ai voulu updater également les autres composants que sont SonarQube-Runner et Jenkins et le Monsieur Jenkins m’a causé quelques soucis.

Donc ce post va nous permettre de voir un upgrade de SonarQube-Runner et Jenkins, ainsi que de résoudre (ou contourner) les erreurs rencontrées. Continuer la lecture

SonarQube Upgrade 4.0

SonarUpgrade4.0 Le dernier article sur SonarQube traitait d’un upgrade de version. J’ai malheureusement tardé un peu entre le moment oú j’ai effectué cet upgrade et la réalisation de l’article, si bien qu’une nouvelle version de SonarQube est depuis disponible.

Il s’agit d’une version 4.0 (donc majeure), que j’ai installée ce week-end. Et comme j’ai rencontré quelques erreurs, ce sera l’occasion de mettre à jour le post SonarQube Upgrade, de documenter ces messages d’erreurs et leur résolution.

Je ne vais pas détailler toutes les étapes d’upgrade comme dans l’article précédent, mais préciser simplement les erreurs rencontrées et leur solutions.

Continuer la lecture

SonarQube Upgrade

SonarUpgradeImg2
Après avoir préparé notre mise-à-jour de version SonarQube dans le précédent post sur les pré-requis d’upgrade, et vu également comment effectuer un backup de notre base de données Oracle (ou tout au moins du schéma Sonar), nous allons voir maintenant comment effectuer cet upgrade.

Rappelons que vous pouvez toujours consulter la documentation sur ce sujet depuis le site SonarSource. Cette procédure n’évolue que très rarement mais je vous recommande de toujours vous y référer, pour le cas où cet article s’avérerait obsolète.

Egalement, notre upgrade traitera d’un SonarQube installé en service Windows.

Continuer la lecture