Skip to content
Benoît Garçon edited this page Jul 18, 2018 · 12 revisions

Build Status SonarQube Quality Gate SonarQube Bugs SonarQube Coverage SonarQube Technical Debt

Welcome to the sonar-icode-cnes-plugin wiki!

Table of contents

About

Sonar-icode-cnes-plugin is a SonarQube plugin integrating i-Code CNES results into SonarQube dashboard. i-Code CNES is a free open source code checker for Fortran and Shell, available here : https://github.com/lequal/i-CodeCNES.

Build

Required : git, Java 8 and maven 3.5.0 (or latest)

  • Clone github repository : git clone https://github.com/lequal/sonar-icode-cnes-plugin.git
  • Build using maven from the project directory : mvn clean install
  • The generated plugin can be found into the target directory (<sonar-icode-cnes-plugin_dir>/target)

Install

  • Copy the generated jar into <SonarQube_installation_directory>/extensions/plugins.
  • Restart SonarQube : sonar restart or service sonar restart
  • Check SonarQube logs : tail -f <SonarQube_installation_directory>/logs/web.log

Configure

  • Open SonarQube web interfaces http://<SonarQube_installation_host_ip>:9000 or http://localhost:9000 if your are on the host machine.
  • Select "Icode Quality Profile" and add selected i-Code CNES rules to the Profile.

Run

Prepare i-Code CNES project

For all project source files, run: icode <source_file> > <result_file>

Where:

  • The source file <source_file> shall have for extension .f, .f77, .f90 or .sh.
  • The i-Code CNES standard output stream shall be stored into a report file whose name is given in SonarQube property sonar.icode.reports.path.

Configure sonar-scanner

In your project directory, create sonar-project.properties file, containing the following items :

sonar.projectKey=<your_project_key>
sonar.projectName=<your_project_name>
sonar.projectVersion= <your_project_version>
# Comma-separated paths to directories with sources (required)
sonar.sources=.
# Tells SonarQube where the i-Code CNES analysis reports are
sonar.icode.reports.path=<report_path>
# Encoding of the source files
sonar.sourceEncoding=UTF-8

Run sonar-scanner

Once you got i-Code CNES results and sonar-project.properties configured, you can launch sonar-scanner from your project's directory : sonar-scanner.

i-Code CNES plugin rules definition

sonar-icode-cnes-plugin integrates all i-Code CNES rules. For more information on rules definition, please look directly on i-Code CNES github page : https://github.com/lequal/i-CodeCNES.

Contribute

You can contribute to sonar-icode-cnes-plugin :

Support

Contact : [email protected]

Bugs and Feature requests : https://github.com/lequal/sonar-icode-cnes-plugin/issues

Licensing

sonar-icode-cnes-plugin is under GNU GPL v3.