¡Esta es una revisión vieja del documento!
Esta sección esta dedicada a la definición del proceso de análisis de código fuente que se debe implementar en los proyectos de las aplicaciones de la compañía. Para realizar este proceso se ha elegido la tecnologiá Sonar la cual se divide en los siguientes componentes:
SonarQube® es una herramienta de revisión automática de código para detectar errores, vulnerabilidades y olores de código en su código. Puede integrarse con su flujo de trabajo existente para permitir la inspección continua del código en las ramas de su proyecto y solicitudes de extracción.1)
SonarLint® es una extensión IDE gratuita y de código abierto que identifica y le ayuda a solucionar problemas de calidad y seguridad mientras codifica. Como un corrector ortográfico, SonarLint garabatea fallas y proporciona comentarios en tiempo real y una guía clara de corrección para entregar un código limpio desde el principio.2)
Antes de realizar un analisis de código fuente centralizado deben realizarse los siguientes procesos.
Este es el proceso inicial que se debe realizar para implementar el análisis de código fuente centralizado y consiste en la creación del proyecto en el servidor SonarQube. Esta solicitud la debe realizar el lider de equipo al adminsitrador del servidor SonarQube. Solo basta con enviar un correo donde se indique el nombre del proyecto el cual debe ser el mismo del proyecto de código fuente respetando mayusculas y minusculas. El administrador responderá con el Comando de ejecución del proyecto SonarQube el cual debera ser utilizado para los procesos de analsis.
Es el comando que se genera al crear un proyecto de análisis de código fuente en el servidor SonarQube la estrucutra del comando es la siguiente:
mvn sonar:sonar \ -Dsonar.projectKey=[Nombre del Proyecto] \ -Dsonar.host.url=[IP y Puerto del Servidor SonarQube] \ -Dsonar.login=[Token asociado al proyecto SonarQube] <Code> Ejemplo: <code bat> mvn sonar:sonar \ -Dsonar.projectKey=MiProyecto \ -Dsonar.host.url=http://10.1.40.171:9000 \ -Dsonar.login=1234567890123456789012345678901234567890
Este comando se debe ejecutar al momento de lanzar un análisis centralizado.
La configuración de la integración SonarQube/SonarLint se realizará en entorno window 10 con maven 3.x
Lo primero que se debe hacer es ir a las configuraciones globales del gestor de dependencias en el usuario en sesión del sistema operativo. En el caso de window esta ruta por lo general se encuentra en C:\Users\Usuario\.m2\wrapper\dists\apache-maven[Versión Maven instalada]\[directorio hash del empequetado]\apache-maven-[Versión maven instalada]\conf\settings.xml. El archivo que debemos ubicar es el archivo settings.xml y en el debemos realziar la siguiente configuración:
Ubique la sección pluginGroups y copie el siguiente texto como se muestra en el siguiente código de ejemplo
<pluginGroups> <!-- pluginGroup | Specifies a further group identifier to use for plugin lookup. <pluginGroup>com.your.plugins</pluginGroup> --> <pluginGroup>org.sonarsource.scanner.maven</pluginGroup> </pluginGroups>
Si existen más plugins registrado agregue la linea <pluginGroup>org.sonarsource.scanner.maven</pluginGroup> antes del final de la sección </pluginGroups>
Ubique la sección profiles y al final copie el siguiente perfil como se muestra en el siguiente código de ejemplo
<profile> <id>sonar</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <!-- Optional URL to server. Default value is http://localhost:9000 --> <sonar.host.url> http://10.1.40.171:9000 </sonar.host.url> </properties> </profile>
Para finalizar guarde el archivo5) y con eso ya estará configurado el maven para lanzar análisis en el servidor SonarQube.
Se asume que el usuario tiene el IDE Eclipse o Spring Tools Suite. Para instalar el SonarLint siga los siguientes pasos:
Para conectar el SonarLint con el Servidor SonarQube siga los siguientes pasos:
Para conectar el SonarLint con el Servidor SonarQube siga los siguientes pasos:
Para lanzar un analisis local del SonarLint siga los siguientes pasos:
Antes de lanzar un análisis de código fuente centralizado debe solicitar el comando de configuración del proyecto SonarQube este comando debe ser solicitado al lider de equipo de desarrollo y este lo obtendrá del administrador al momento de solicitar la creación de un nuevo proyecto de análisis de código fuente.