Instalacion Sonar Qube

Enrikus' Blog { Blog de un informático } SonarQube: instalación y configuración Hace poco que he empezado a usar SonarQ

Views 396 Downloads 64 File size 358KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Enrikus' Blog { Blog de un informático }

SonarQube: instalación y configuración Hace poco que he empezado a usar SonarQube y la verdad es que me están gustando mucho las posibilidades que ofrece. En este post voy a hablar acerca de esta herramienta y voy a comentar paso a paso el proceso de instalación y configuración del mismo. El proceso de open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

análisis lo dejaré para otro post para no hacer demasiado largo este. SonarQube es una plataforma para evaluar código fuente. Es software libre y usa diversas herramientas de análisis estático de código fuente como Checkstyle, PMD o FindBugs para obtener métricas que pueden ayudar a mejorar la calidad del código de nuestros programas. Además, tiene soporte para más de 20 lenguajes de programación entre los que se encuentran Java, C#, C / C++, PL / SQL, Cobol, ABAP, Python, JavaScript…

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

SonarQube cubre 7 ejes principales de la calidad del software y una vez analizado un proyecto nos muestra información detallada sobre la arquitectura y el diseño, comentarios de nuestro programa, código duplicado, reglas de programación acordes con el lenguaje que estemos utilizando, bugs potenciales y su posible solución, datos referentes a la complejidad del proyecto e incluso datos sobre pruebas unitarias (si tenemos alguna), como número de pruebas unitarias pasadas correctamente o porcentaje de cubrimiento de las mismas.

SonarQube está pensado para ofrecer un seguimiento a lo largo del desarrollo y/o mantenimiento de un programa informático y apoyar a la mejora continua. Sin embargo, también puede ser utilizado para open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

realizar análisis aislados y obtener informes acerca de nuestros proyectos.

Pasos previos Antes de comenzar con la instalación y configuración de SonarQube hay que instalar una base de datos. SonarQube viene por defecto configurado para utilizar H2, que es una base de datos embebida y que solo está recomendada para pruebas. SonarQube es compatible con varios sistemas gestores de bases de datos como MySQL 5.x, Oracle 10g/ 11g, PostgreSQL 8.x/ 9.x y Microsoft SQLServer. En nuestro caso realizaremos la instalación utilizando MySQL 5.6, que previamente deberá estar instalado en el sistema. Lo primero que hay que hacer es crear un nuevo esquema y un usuario con permisos para crear, actualizar y eliminar objetos de este esquema. En mi caso tanto el esquema como el usuario se van a llamar sonarqube.

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

El script SQL para crear el esquema y el usuario es el siguiente: 1 2 3 4 5

CREATE DATABASE sonarqube CHARACTER SET utf8 COLLATE CREATE USER 'sonarqube' IDENTIFIED BY 'sonarqube'; GRANT ALL ON sonarqube.* TO 'sonarqube'@'%' IDENTIFIED GRANT ALL ON sonarqube.* TO 'sonarqube'@'localhost' FLUSH PRIVILEGES;

Un vez tengamos creado el esquema y el usuario podemos comenzar con la instalación de SonarQube.

Instalación del Servidor Web de SonarQube 1. Vamos a la página oficial de descarga SonarQube y descargamos la última versión del servidor (SonarQube v4.0). 2. Descomprimimos el archivo .zip en C:\ para tenerlo fácilmente accesible. 3. Editamos el archivo sonar.properties para configurar el acceso a la base de datos. El archivo se encuentra en C:\sonarqube4.0\conf\sonar.properties. Dentro del archivo de configuración hay open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

que comentar la siguiente línea para no utilizar el SGBD de H2. 1

#sonar.embeddedDatabase.port=9092

Descomentamos las siguientes líneas y asignamos los siguientes valores para indicar al servidor web de SonarQube qué base de datos vamos a utilizar, los datos del usuario y contraseña de la base de datos y la información del servidor web donde se ejecutará una vez esté instalado. Por defecto se ejecuta sobre localhost con el puerto 9000. 1 2 3 4 5 6 7 8 9 10

# DATABASE sonar.jdbc.username=sonarqube sonar.jdbc.password=sonarqube #----- MySQL 5.x sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube # WEB SERVER sonar.web.host=localhost sonar.web.port=9000

4. El último paso consiste en ejecutar el servidor de SonarQube. En mi caso voy a ejecutar la versión de 32 bits de Windows y la ruta es la siguiente: C:\sonarqube-4.0\bin\windows-x86-32\StartSonar.bat. open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

La primera vez que arrancamos el servidor de SonarQube puede tardar un par de minutos porque tiene que crear las tablas en la base de datos. Si todo ha ido bien se debería mostrar un mensaje indicando que el servidor está arrancado:

Ahora vamos a comprobar en nuestro navegador que SonarQube se encuentra disponible, para ello vamos a http://localhost:9000/ y se deberá mostrar la página de inicio del servidor de SonarQube:

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Esto significa que ya tenemos nuestro servidor de SonarQube listo para funcionar.

Instalación del plugin para el lenguaje de programación Antes de poder analizar el código de nuestros proyectos con SonarRuner (cliente oficial de SonarQube) es necesario instalar en el servidor el plugin para el lenguaje que queramos analizar.

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Accedemos al servidor desde http://localhost:9000/ y nos logeamos como administrador (admin/admin). Vamos a Settings > Update Center y veremos que por defecto ya viene instalado el plugin para Java. Se pueden instalar plugins para diversos lenguajes o incluso actualizarlos a una versión más reciente. Para ello solo tenemos que hacer click en Available Plugins y seleccionar el que queramos.

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Instalación y configuración de SonarRunner Una vez tengamos listo el servidor con los plugins necesarios es hora instalar un cliente para poder analizar el código. Para este tutorial voy a utilizar Sonar-Runner que es el cliente oficial de SonarQube. 1. Vamos a la página oficial de descarga SonarQube y descargamos la última versión del cliente (Sonar-Runner v2.3). 2. Descomprimimos el archivo .zip en C:\ para tenerlo fácilmente accesible. 3. Para configurar Sonar-Runner tenemos que ir a C:\sonar-runner2.3\conf y editar el archivo sonar-runner.properties. Tenemos que descomentar las siguientes líneas y completarlas con los datos de la configuración del servidor que hemos empleado en la instalación del open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

mismo: 1 2 3 4 5 6 7 8 9

#----- Default SonarQube server sonar.host.url=http://localhost:9000 #----- MySQL sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube #----- Global database settings sonar.jdbc.username=sonarqube sonar.jdbc.password=sonarqube

Añadimos una nueva variable del sistema llamada SONAR_RUNNER_HOME con el directorio de instalación:

Añadimos la ruta completa al path de Windows:

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Para comprobar si se ha añadido correctamente al path de Windows abrimos un terminal y ejecutamos el comando sonar-runner –h. Si todo es correcto deberíamos obtener la ayuda de Sonar-Runner:

Ya tenemos instalado y configurado tanto el servidor como el cliente de SonarQube y podemos empezar a analizar nuestros proyectos. open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

de SonarQube y podemos empezar a analizar nuestros proyectos. El proceso de análisis de un proyecto lo podeís encontrar en el siguiente post. Más información en la web de SonarQube y en la documentación COMPÁRTELO:

6

28 diciembre, 2013

Más

Enrikus

Software, Tutoriales

SonarQube

7 comentarios sobre “SonarQube: instalación open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

7 comentarios sobre “SonarQube: instalación y configuración”

Pingback: SonarQube: Instalación y configuración - Javier Alvarez Caballero

Gonzalo Pazos 10 febrero, 2015 a las 18:19

Hola buen post me sale que el servidor esta iniciado todo bien pero cuando entro al localhost:9000 sale: org.jruby.rack.RackInitializationException: no connection available from arjdbc/jdbc/RubyJdbcConnection.java:517:in `set_native_database_types’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord-jdbcadapter-1.1.3/lib/arjdbc/jdbc/connection.rb:61:in `initialize’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord-jdbcopen in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

adapter-1.1.3/lib/arjdbc/jdbc/adapter.rb:31:in `initialize’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord-jdbcadapter-1.1.3/lib/arjdbc/jdbc/connection_methods.rb:6:in `jdbc_connection’ from org/jruby/RubyKernel.java:2225:in `send’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:223:in `new_connection’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:245:in `checkout_new_connection’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:188:in `checkout’ from org/jruby/RubyKernel.java:1517:in `loop’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:184:in `checkout’ from jar:file:/C:/sonarqube-4.0/web/WEB-INF/lib/jruby-complete1.7.6.jar!/META-INF/jruby.home/lib/ruby/1.8/monitor.rb:191:in `mon_synchronize’ open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:183:in `checkout’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:98:in `connection’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_po ol.rb:326:in `retrieve_connection’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_sp ecification.rb:123:in `retrieve_connection’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/connection_adapters/abstract/connection_sp ecification.rb:115:in `connection’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/migration.rb:440:in `initialize’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/migration.rb:401:in `up’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord2.3.15/lib/active_record/migration.rb:383:in `migrate’ open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

from C:/sonarqube-4.0/web/WEBINF/config/../lib/database_version.rb:62:in `upgrade_and_start’ from C:/sonarqube-4.0/web/WEBINF/config/../lib/database_version.rb:74:in `automatic_setup’ from C:/sonarqube-4.0/web/WEB-INF/config/environment.rb:236:in `(root)’ from org/jruby/RubyKernel.java:1096:in `load’ from file:/C:/sonarqube-4.0/web/WEB-INF/lib/jruby-rack1.1.13.2.jar!/jruby/rack/rails/environment2.rb:1:in `(root)’ from file:/C:/sonarqube-4.0/web/WEB-INF/lib/jruby-rack1.1.13.2.jar!/jruby/rack/rails/environment2.rb:25:in `load_environment’ from file:/C:/sonarqube-4.0/web/WEB-INF/lib/jruby-rack1.1.13.2.jar!/jruby/rack/rails_booter.rb:79:in `load_environment’ quisiera saber como soluciono esto RESPONDER

Luis Del Castillo open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Luis Del Castillo 24 abril, 2015 a las 22:22

Hola buenas tardes. A mi también me salia ese error, tienes que verificar que el archivo sonar.properties este configurado correctamente según la base de datos a la cual te vas a conectar. Yo utilice una base de datos Oracle 11g Express Edition y cuado coloque la siguiente linea sonar.jdbc.url: jdbc:oracle:thin:@localhost:1521/XE en el archivo sonar.properties me funciono, ya no salio el error. Cordialmente. Luis. RESPONDER

Ariana Infante open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

19 mayo, 2015 a las 23:21

Hola, buenas tardes… Luego que realizo todos los pasos para la instalacion de sonarqube y ejecuto C:\sonarqube-4.0\bin\windows-x86-32\StartSonar.bat. arraca y luego se cierra sin mostrar nada. Ingreso al http://localhost:9000/ y no carga. Me podrian ayudar! Gracias de antemano. RESPONDER

Leandro 7 agosto, 2015 a las 19:26

Para los que les sale el error: org.jruby.rack.RackInitializationException: no connection available from arjdbc/jdbc/RubyJdbcConnection.java:517:in open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

`set_native_database_types’ from C:/sonarqube-4.0/web/WEB-INF/gems/gems/activerecord- ETC…. Yo lo solucione asi: sonar.jdbc.url=jdbc:mysql://localhost:3306/sonarqube? useUnicode=true&characterEncoding=utf8&rewriteBatchedStatemen ts=true Hay que configurar bien sonar.properties RESPONDER

Wekmentor 15 marzo, 2016 a las 22:43

Muchas gracias por compartirlo. Me ha sido muy útil el tutorial. Felicidades por el blog!! RESPONDER open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

carlospq 23 junio, 2016 a las 11:55

Gracias por compartir este tutorial. Usándolo como guía he instalado el Sonar en Ubuntu 14.04 RESPONDER

Deja un comentario Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con * COMENTARIO

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

NOMBRE *

CORREO ELECTRÓNICO *

WEB

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

TRES ×

= 3

 PUBLICAR COMENTARIO

Recibir un email con los siguientes comentarios a esta entrada. Recibir un email con cada nueva entrada.

ANTERIOR

¡Hola mundo!

SIGUIENTE

Añadir un favicon personalizado en WordPress open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Creado con WordPress

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com