tel./fax: +34 91 675 33 06 [email protected] - www ... · y Bugzilla en TestLink Últimos...

6
Avenida de Castilla,1 - Edificio Best Point - Oficina 21B 28830 San Fernando de Henares (Madrid) tel./fax: +34 91 675 33 06 [email protected] - www.autentia.com Somos su empresa de Soporte a Desarrollo Informático. Ese apoyo que siempre quiso tener... 1. Desarrollo de componentes y proyectos a medida Tecnología Desarrollo Sistemas Gran Empresa Producción autentia Certificación o Pruebas Verificación previa RFP Concurso Consultora 1 Consultora 2 Consultora 3 Equipo propio desarrollo Piloto 3a 3b 1. Definición de frameworks corporativos. 2. Transferencia de conocimiento de nuevas arquitecturas. 3. Soporte al arranque de proyectos. 4. Auditoría preventiva periódica de calidad. 5. Revisión previa a la certificación de proyectos. 6. Extensión de capacidad de equipos de calidad. 7. Identificación de problemas en producción. 3. Arranque de proyectos basados en nuevas tecnologías ¿Qué ofrece Autentia Real Business Solutions S.L? Para más información visítenos en: www.autentia.com Compartimos nuestro conociemiento en: www.adictosaltrabajo.com Gestor portales (Liferay) Gestor de contenidos (Alfresco) Aplicaciones híbridas Tareas programadas (Quartz) Gestor documental (Alfresco) Inversión de control (Spring) BPM (jBPM o Bonita) Generación de informes (JasperReport) ESB (Open ESB) Control de autenticación y acceso (Spring Security) UDDI Web Services Rest Services Social SSO SSO (Cas) Spring MVC, JSF-PrimeFaces /RichFaces, HTML5, CSS3, JavaScript-jQuery JPA-Hibernate, MyBatis Motor de búsqueda empresarial (Solr) ETL (Talend) Dirección de Proyectos Informáticos. Metodologías ágiles Patrones de diseño TDD 2. Auditoría de código y recomendaciones de mejora 4. Cursos de formación (impartidos por desarrolladores en activo)

Transcript of tel./fax: +34 91 675 33 06 [email protected] - www ... · y Bugzilla en TestLink Últimos...

Page 1: tel./fax: +34 91 675 33 06 info@autentia.com - www ... · y Bugzilla en TestLink Últimos Tutoriales del Autor » Instalación de Redmine (Bitnami) e integración con Subversion.

Avenida de Castilla,1 - Edificio Best Point - Oficina 21B28830 San Fernando de Henares (Madrid)

tel./fax: +34 91 675 33 [email protected] - www.autentia.com

Somos su empresa de Soporte a Desarrollo Informático.Ese apoyo que siempre quiso tener...

1. Desarrollo de componentes y proyectos a medida

TecnologíaDesarrolloSistemas

Gran Empresa

Producción

autentia

Certificacióno Pruebas

Verificación previa

RFP Concurso

Consultora 1

Consultora 2

Consultora 3

Equipo propio desarrolloPiloto

3a

3b

1. Definición de frameworks corporativos.2. Transferencia de conocimiento de nuevas arquitecturas.3. Soporte al arranque de proyectos.4. Auditoría preventiva periódica de calidad.5. Revisión previa a la certificación de proyectos.6. Extensión de capacidad de equipos de calidad.7. Identificación de problemas en producción.

3. Arranque de proyectos basados en nuevas tecnologías

¿Qué ofrece Autentia Real Business Solutions S.L?

Para más información visítenos en: www.autentia.com

Compartimos nuestro conociemiento en: www.adictosaltrabajo.com

Gestor portales (Liferay)Gestor de contenidos (Alfresco)Aplicaciones híbridas

Tareas programadas (Quartz)Gestor documental (Alfresco)Inversión de control (Spring)

BPM (jBPM o Bonita)Generación de informes (JasperReport)ESB (Open ESB)

Control de autenticación y acceso (Spring Security)UDDIWeb ServicesRest ServicesSocial SSOSSO (Cas)

Spring MVC, JSF-PrimeFaces /RichFaces, HTML5, CSS3, JavaScript-jQuery

JPA-Hibernate, MyBatisMotor de búsqueda empresarial (Solr)ETL (Talend)

Dirección de Proyectos Informáticos.Metodologías ágilesPatrones de diseñoTDD

2. Auditoría de código y recomendaciones de mejora

4. Cursos de formación (impartidos por desarrolladores en activo)

Page 2: tel./fax: +34 91 675 33 06 info@autentia.com - www ... · y Bugzilla en TestLink Últimos Tutoriales del Autor » Instalación de Redmine (Bitnami) e integración con Subversion.

Entra en Adictos a través de

Entrar

Deseo registrarmeOlvidé mi contraseña

Inicio Quiénes somos Formación Comparador de salarios Nuestros libros Más

» Estás en: Inicio Tutoriales Soporte en Sonar para un proyecto multi-lenguaje: configuración desde Jenki...

Síguenos a travésde:

Catálogo de serviciosAutentia

Últimas Noticias

» Final de temporada deTerrakas Autentia freaklances

» Atención, APLAZADOEstreno último capítulo deTerrakas

» Vendedor: Soy inseguro,filtra o elige por mi: si quieresque te compre.

» Comentando el libro: El artede pensar, de Rolf Dobelli

» Ya está a la venta misegundo libro: Planifica tuéxito, de aprendiz aempresario

Histórico de noticias

Últimos Tutoriales

» Integración de Selenium Gridcon Jenkins

» Generación de informes deproyectos ágiles en TestLink

» El Mediterránea APIDaysque vivimos

» Dónde contratar mi tiendaOnline.

Soporte en Sonar para un proyecto multi-lenguaje: configurac... http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pag...

1 de 5 11/06/13 15:28

Page 3: tel./fax: +34 91 675 33 06 info@autentia.com - www ... · y Bugzilla en TestLink Últimos Tutoriales del Autor » Instalación de Redmine (Bitnami) e integración con Subversion.

powered by karmacracy » Integración de Jira, Redminey Bugzilla en TestLink

Últimos Tutoriales delAutor

» Instalación de Redmine(Bitnami) e integración conSubversion.

» Análisis de los sentimientosen twitter con el soporte deApicultur.

» jBPM Form Builder:generación de formulariospara jBPM5 y su integraciónen Guvnor.

» jBPM5 Console Server andHuman Task Server:instalación y configuración

» Spring Security: haciendouso de un servidor LDAPembebido.

Últimas ofertas deempleo

2011-09-08Comercial - Ventas -MADRID.

2011-09-03Comercial - Ventas -VALENCIA.

2011-08-19Comercial - Compras -ALICANTE.

2011-07-12Otras Sin catalogar -MADRID.

2011-07-06Otras Sin catalogar -LUGO.

Jose Manuel Sánchezsanchezsuarezj

Join the conversation

Ver todos los tutoriales del autor

Jose Manuel Sánchez Suárez

Consultor tecnológico de desarrollo de proyectos informáticos.

Puedes encontrarme en Autentia: Ofrecemos servicios de soporte a desarrollo, factoría yformación

Somos expertos en Java/J2EE

Fecha de publicación del tutorial: 2013-06-11 Tutorial visitado 3 veces Descargar en PDF

Soporte en Sonar para un proyecto multi-lenguaje: configuración desdeJenkins.

0. Índice de contenidos.

1. Introducción.2. Entorno.3. Configuración de Sonar.4. Configuración del proyecto.5. Configuración de Jenkins.6. Referencias.7. Conclusiones.

1. Introducción

El escenario de partida de este tutorial en simple, jenkins + sonar y el resto de piezas dentro de un entorno de CI, con unproyecto JEE mavenizado de modo tal que la configuración de sonar en jenkins dentro del proyecto es simple y ya hemoshablado de ello en adictos.

La complejidad viene dada cuando necesitamos que, además de ejecutar sonar con el perfil java, queremos hacer uso delperfil web para pasar el CPD sobre nuestras JSPs. En este momento la complejidad se traduce en, ¿cómo puedo configurarun proyecto en jenkins para que analice dos lenguajes a la vez con sonar?:

primero: sonar admite perfiles de calidad y, por defecto, es java. Instalando el plugin Web para Sonar se añade unsegundo perfil de calidad y el lenguaje es web. Al analizar el código puedes elegir lenguaje, pero ¿cómo selecciono losdos?, ysegundo: cómo configurar jenkins para que lo ejecute con un proyecto mavenizado. Podemos cambiarlo indicando comolenguaje "web" y funciona, pero deja de analizar el lenguaje java.

En este tutorial vamos a ver cómo configurar un proyecto para tener dos perfiles de calidad (java + web) con el soporte demaven en jenkins y sonnar runner.

Por último, se da por supuesto que tenemos ya instalado un entorno de CI con jenkins y sonar, y controlamos la administraciónde los mismos.

2. Entorno.

El tutorial está escrito usando el siguiente entorno:

Hardware: Portátil MacBook Pro 15' (2.4 GHz Intel Core i7, 8GB DDR3 SDRAM).Sistema Operativo: Ubuntu Linux Server Edition 12.04 x86, sobre un Mac OS X Lion 10.7.5Maven 3.0.5Sonar 3.5.1Jenkins 1.513

3. Configuración de Sonar.

En sonar, para dar soporte al análisis de un perfil distinto al de por defecto, que es java, debemos instalar el plugincorrespondiente. Para ello no tenemos que más que acceder a la configuración de plugins (Settings > configuration > UpdateCenter) y añadir el elegido, en nuestro caso el plugin web.

jsral Working Efficiently withMaven Modules zite.to/12d5VoJyesterday · reply · retweet · favorite

rcanalesmora Este miércolescelebraremos 10º aniversario de@autentia y estreno de@terrakas. Apúntate enterrakas.com (aforo limitado)yesterday · reply · retweet · favorite

sanchezsuarezj pequeñosplaceres antes de una mañanaintensa... Y vuelta a casa!pic.twitter.com/JQ60g0Ow6b6 days ago · reply · retweet · favorite

rcanalesmora 5 letras, animal decompañía #dePinchosPorBilbaopic.twitter.com/R4JOlrGCAo7 days ago · reply · retweet · favorite

Soporte en Sonar para un proyecto multi-lenguaje: configurac... http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pag...

2 de 5 11/06/13 15:28

Page 4: tel./fax: +34 91 675 33 06 info@autentia.com - www ... · y Bugzilla en TestLink Últimos Tutoriales del Autor » Instalación de Redmine (Bitnami) e integración con Subversion.

Reiniciamos sonar y listo, deberíamos disponer, en la sección de perfiles de los siguientes:

4. Configuración del proyecto.

Para configurar el proyecto para el perfil java no debemos hacer nada puesto que es el lenguaje por defecto y, al hacer uso demaven y jenkins, no necesitamos configuración alguna a nivel de proyecto.

Para añadir el segundo perfil de calidad usaremos sonar runner y para ello solo debemos añadir un fichero sonar-project.properties a la raíz del proyecto con un contenido similar al siguiente:

Con ello ya tenemos la configuración lista para sonar runner y podemos ejecutar un análisis por línea de comandos, aunque lointeresante viene en el siguiente punto, para poder ejecutarlo dentro del ciclo de CI, con el soporte de jenkins.

5. Configuración de jenkins.

Como el análisis del segundo perfil lo vamos a realizar con el soporte de sonar runner lo primero que debemos hacer esinstalarlo en el servidor de jenkins, para ello podemos realizar una instalación standalone y configurar el path en jenkins o, unainstalación embebida con el soporte de jenkins. Si elegimos esta segunda opción basta con acceder a la administración dejenkins y seleccionar:

El paquete se instala en el directorio local de jenkins bajo tools y por defecto en el análisis tomará las propiedadesconfiguradas en el siguiente fichero /opt/jenkins/tools/hudson.plugins.sonar.SonarRunnerInstallation/Sonar_Runner_Integraci_n/conf/sonar-runner.properties donde Sonar_Runner_Integraci_n es el nombre de la instalaciónque hemos asignado en la configuración de jenkins.

Dicho fichero debería tener un contenido similar al siguiente apuntando a la instalación de sonar:

123456789

101112

#Se puede equiparar con el groupId de Maven (Obligatorio) sonar.projectKey=com:autentia:tntconcept-web#Se puede equiparar con el artifactId de Maven. Es el nombre que se va a mostrar el dashboard de Sonar. (sonar.projectName=tntconcept-web#Se puede equiparar a la versión de Maven. (Obligatorio) sonar.projectVersion=0.0.1-SNAPSHOT #Indicamos todos los directorios donde haya código Java. (Obligatorio) sonar.sources=tntconcept-web/src/main/webapp # Indicamos el lenguaje que queremos analizar (Por defecto, Java) sonar.language=web

123456789

10

sonar.host.url=http://localshot/sonar/ sonar.login=adminsonar.password=admin #----- MySQLsonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStasonar.jdbc.driver=com.mysql.jdbc.Driver #----- Global database settings

?

?

Soporte en Sonar para un proyecto multi-lenguaje: configurac... http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pag...

3 de 5 11/06/13 15:28

Page 5: tel./fax: +34 91 675 33 06 info@autentia.com - www ... · y Bugzilla en TestLink Últimos Tutoriales del Autor » Instalación de Redmine (Bitnami) e integración con Subversion.

Share | 0

Anímate y coméntanos lo que pienses sobre este TUTORIAL:

Con lo visto, cualquier proyecto podría analizarse con el soporte de sonar runner, añadiendo el siguiente "paso posterior"

Y configurando el path donde se encuentra el fichero de propiedades de sonar runner

También podríamos haber asignado en "Project properties" dichas propiedades y haber prescindido del fichero de propiedadesa nivel de proyecto.

Ejecutando una build en jenkins, tendríamos en sonar dos proyectos, analizados con dos perfiles distintos:

el perfil java por defecto que se ejecuta con maven; en sonar tendrá el mismo nombre que el proyecto mavenizado, yel perfil web con el soporte de sonar runner, que tendrá como nombre de proyecto en sonar el asignado a nivel defichero de propiedades.

6. Referencias.

http://docs.codehaus.org/display/SONAR/Web+Pluginhttp://stackoverflow.com/questions/13625022/does-sonar-support-multiple-language-in-same-project

7. Conclusiones.

A nivel de proyecto, un fichero de propiedades adicional y a nivel de jenkins poca más configuración y ya tenemos listo nuestroproyecto para analizar los olores también en nuestras JSPs... ;)

Quién dice JSPs ahora puede decir JS mañana, la cuestión es poder analizar el código de varios lenguajes a la vez en unmismo proyecto.

Un saludo.

Jose

[email protected]

A continuación puedes evaluarlo:

Regístrate para evaluarlo

Por favor, vota +1 o compártelo si te pareció interesante

1112

sonar.jdbc.login=sonarsonar.jdbc.password=sonar

Soporte en Sonar para un proyecto multi-lenguaje: configurac... http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pag...

4 de 5 11/06/13 15:28

Page 6: tel./fax: +34 91 675 33 06 info@autentia.com - www ... · y Bugzilla en TestLink Últimos Tutoriales del Autor » Instalación de Redmine (Bitnami) e integración con Subversion.

Esta obra está licenciada bajo licencia Creative Commons de Reconocimiento-No comercial-Sin obras derivadas 2.5

» Registrate y accede a esta y otras ventajas «

Copyright 2003-2013 © All Rights Reserved | Texto legal y condiciones de uso | Banners | Powered by Autentia | Contacto

Soporte en Sonar para un proyecto multi-lenguaje: configurac... http://www.adictosaltrabajo.com/tutoriales/tutoriales.php?pag...

5 de 5 11/06/13 15:28