Archivo por meses: septiembre 2013

Migrar Jenkins de Tomcat a un servicio Windows

MigrerJenkins

Nuestra actual serie de posts se centra en la migración de SonarQube y Jenkins de Tomcat, a una instalación en servicios de Windows.

Ya hemos visto cómo realizar esta migración para SonarQube sin dejar de trabajar con Jenkins en Tomcat, es decir, sin perder nuestro repositorio SonarQube, el dashboard, los resultados de análisis, los perfiles. También sin perder la capacidad de lanzar proyectos configurados en Jenkins, y por lo tanto sin perder ningún tipo de plugins instalados, incluyendo el plugin del SonarQube Runner.

Hoy vamos a ver cómo migrar Jenkins a un servicio de Windows. Y finalmente poder deshacernos de Tomcat.

Sigue leyendo

Webinar Systar – Capacity Assessment

En nuestros tiempos de crisis económica, de creciente competencia, de globalización, ¿cómo reducir aún más los costes? ¿dónde encontrar nuevas fuentes de optimización?

Hoy en día, hacer más con menos es la prioridad

El 8 de octubre, presentaré como la solución OmniVision de Systar permite optimizar su infraestructura de servidores para entregar la capacidad a los negocios.

SystarWebinarHeader

Evaluación de las capacidades

Martes 8 de octubre, 11:30-12:00 Conexión gratuita

Webinar Systar - Capacity planning orientado a servicios
Sigue leyendo

SonarQube en servicio Windows con Jenkins en Tomcat

SonarQube2 Hemos visto en nuestro último post cómo migrar SonarQube de Tomcat a un servicio Windows. De hecho hicimos una nueva instalación sin perder nuestro repositorio, creado con la versión de SonarQube bajo Tomcat. Hemos verificado que nuestros proyectos, los resultados de los anteriores análisis, pero también toda la configuración existente (plugins, perfiles de calidad, etc.) estaban presentes.

Bueno. Pero ¿qué pasa con Jenkins? Nuestro Jenkins bajo Tomcat trabajaba con la versión SonarQube Tomcat. Ahora tenemos que configurarlo para que siga adelante con nuestro servicio de Windows SonarQube.

¿Cómo proceder? Estos son los pasos que he seguido.  Sigue leyendo

Migrar SonarQube de Tomcat a un servicio Windows

SonarQubeService

Como ya mencionado, SonarQube no estará más disponible para Tomcat, pero sólo como un servicio de Windows. Eso significa que voy a tener que migrar mi plataforma SonarQube / Jenkins.

Pues hay algunas preguntas: ¿Voy a perder mi configuración? ¿Y mi análisis? SonarQube utiliza una base de datos para almacenar los resultados de los análisis, por lo que se puede esperar mantenerlos y su historia.

Pero ¿Qué pasa con la configuración de mi SonarQube? ¿Voy a tener que volver a instalar mis plugins? Maldita sea ¿dónde puse las llaves de licencia para estos plugins? Y mis Quality Profiles? ¿Se almacenan en la base de datos o en algún archivo?

¿En qué orden debo hacer esta migración: primero Jenkins y a continuación comprobar si el es todavía capaz de reconocer SonarQube y seguir con los proyectos existentes? De hecho, voy a empezar por SonarQube porque es mucho más sencillo que Jenkins.

Luego veremos como migrar también a Jenkins, para finalmente deshacernos de Tomcat.

Migrar SonarQube a un servicio Windows

Objetivos

Primero, mi versión actual de SonarQube es una 3.5.1. Hay una nueva versión 3.7 … en el momento en que escribo este post, ya que cambia muy rápidamente. El team SonarSource es altamente productivo. Esta última versión tiene muchas nuevas características, pero será objeto de futuros posts.

También será una oportunidad para comprobar cómo actualizar una versión SonarQube instalada como un servicio. Si te interesa el tema, hemos visto cómo llevar a cabo dicha actualización en este post: Sonar Upgrade.

También voy a limitarme a una migración SonarQube en este post, es decir a una instalación como un servicio Windows y asegurarme de que puedo seguir trabajando con mi repositorio existente: mi cuadro de mando, mis análisis, mi configuración, etc. Veremos en el próximo post los cambios que realizar en mi actual Jenkins (bajo Tomcat) para trabajar con mi nuevo servicio SonarQube.

Documentación

Como todo buen informático (hum, hum), nunca leo la documentación, y menos las de instalación. Me parece muy poco natural que un software no sepa instalarse solo (sabes, ‘Next’, ‘Next’, ‘Next’, …) y requiere primero de leer un manual de instalación. Sin embargo, ya que no aconsejo hacer lo mismo, aquí está el enlace en el sitio SonarSource: http://docs.codehaus.org/display/SONAR/Running+SonarQube+as+a+Service+on+Windows.

Bueno, parece super-sencillo:

Sonar_InstallWinService

Instalación

Primero voy a para Tomcat para asegurarme de no trabajar con mi actual SonarQube (una webapp de Tomcat).

Stop_Tomcat

Luego, me pongo en una ventana DOS para ir al directorio de mi instalación SonarQube.

Sonar_Bin

Mi versión actual es una 3.5.1. En la carpeta \sonar-3.5.1\bin, puedo encontrar dos sub-directorios ‘windows-x86-32’ y ‘windows-x86-64’, este ultimo para una instalación Windows 64 bits.

Sonar_InstallWinService2

No entraré en los detalles de lo que hace este programa .bat. Vamos a seguir la recomendación de la documentación y ejecutar este programa como Administrador.

Es muy rápido. En la ventana de Servicios Windows, podemos comprobar que aparece el servicio SonarQube.

Sonar_Service

Se puede lanzar este servicio con un ‘Start’ en esta ventana, o desde el fichero ‘startNTService’ en la carpeta anterior, en la ventana DOS:

sonar_Runservice1

Pero me sale el siguiente mensaje de error:

Sonar_ServiceLaunchError

Lo mismo si intento hacer un ‘Start’ del servicio SonarQube:

Sonar_ServiceLaunchError2

Sonar_ServiceProp1

Ahora, si abrimos las ‘Properties’ del servicio (click derecha en el servicio para conseguir el menú siguiente)…

 

 

 

 

…y poder entrar en la pestaña ‘Log On’.

Sonar_ServiceProp2

Seleccionar ‘This account’, luego activar el botón ‘Browse…’ :

Sonar_ServiceProp3

En la siguiente ventana, activar el botón ‘Advanced…’.

Sonar_ServiceProp4a

Y ‘Find Now’ para conseguir la lista de los usuarios para conectarse (Log On) y lanzar el servicio.

Sonar_ServiceProp4

Voy a seleccionar mi usuario Windows con cual encendió mi maquina:

Sonar_ServiceProp5

Validar con el botón ‘OK’. Puedes notar el nombre de mi maquina (JPFPC).

Sonar_ServiceProp6

‘OK’ de nuevo para regresar en la pestaña ‘Log On’, en la cual podemos entrar la contraseña de mi usuario. Botón ‘Apply’ y luego ‘OK’ para salir de la ventana Properties.

Si ahora lanzamos de nuevo el servicio SonarQube … ¡Yes! El mensaje de error ha desaparecido y el servicio está en el estado ‘Started’.

Verificación

SonarQubeURL

El nuevo dashboard SonarQube – como servicio Windows – es disponible en la dirección localhost:9000. Entrar esta url en el navegardor para ver aparecer el dashboard tal como lo hemos dejado.

Puedes comprobar: tus análisis están presentes, los plugins también y activos (no hay necesidad de volver a introducir la licencia). Toda tu configuración SonarQube tal como era en Tomcat, todos tus proyectos, bueno, el  repositorio SonarQube completo está disponible y listo para su uso.

Nos queda por realizar un análisis de nuestro actual Jenkins en Tomcat..

Lo que veremos en el próximo post. Hasta luego.

Noticias de Qualilogy

SonarSource Dos noticias importante desde el sitio web de SonarSource.

La plataforma Sonar, dedicada a la inspección continua de la calidad de código, ha cambiado de nombre para llamarse SonarQube, desde el 20 de junio de 2013. El anuncio en el sitio web de SonarSource se puede encontrar aquí.

Pues ha pasado un par de meses pero es lo que se necesitaba para adaptarse y acostumbrarse a hablar de SonarQube y no de Sonar.

Me preguntaba si tenía que cambiar los posts que hablan de Sonar en mi blog Qualilogy. Ya que eso representa una cierta cantidad de trabajo, y resulta además una fuente de errores (especialmente en el cambio y la verificación de los numerosos vínculos entre todos los artículos). Hasta que alguien pidió información sobre SonarQube, diciendo que solamente había encontrado documentación para Sonar, y preguntando si era el mismo software.  Sigue leyendo