Usa el centro de actualizaciones de bitegarden o copia el .jar descargado en la carpeta de plugins de SonarQube™:
$SONAR_HOME/extensions/plugins/
No se requiere lanzar un nuevo análisis para poder descargar los informes.
Puedes encontrar todos los informes relacionados con este plugin en la opción "More..." y después "Reporting" dentro del menu del espacio de proyecto de SonarQube™.
Podrás descargar en la página de gestión de informes todos los que estén disponibles:
- Resumen ejecutivo en PDF: un sencillo y limpio informe con toda la información en una sola página.
- Informe de resumen de evidencias en PDF: ste informe en PDF extiende el informe ejecutivo
con el resumen de las evidencias detectadas por regla (una página por regla). Incluye métricas generales y
de código nuevo, y un resumen de evidencias detectadas por regla.
- Resumen ejecutivo en PDF: Este informe en PDF extiende el informe resumen de evidencias
con el detalle de todas las evidencias detectadas por regla. Incluye métricas generales y de código nuevo,
y todas las evidencias detectadas por regla.
- Informe Excel: Este informe en excel contiene toda la información importante para tu proyecto.
Incluye el resumen ejecutivo así como todas las evidencias detectadas por las distintas reglas.
- Informe personalizado con Open Document (ODT): un informe personalizado creado utilizando una plantilla que puedes
modificar para crear nuevos informes.
Página de Gestión de Informes proporcionada por el plugin
Crea tu plantilla personalizada y configura el plugin para poder usarla a través de la configuración de administración
Descarga la plantilla por defecto para ver un ejemplo de como utilizarla.
Report Plugin for SonarQube™ te permite configurar la plantilla de manera global o por proyecto. Además, las plantillas se proveen a través de URLs, por lo que no es obligatorio tener acceso a la máquina donde SonarQube™ está ejecutándose.
La creación de un informe personalizado reside en la configuración de la plantilla. La plantilla es un OpenDocument que puede ser editado con OpenOffice o LibreOffice.
Para generar las plantillas, un subconjunto de FreeMarker es usado. Algunas expresiones válidas son:
${ncloc} : Reemplaza la expresión ncloc son su valor. Si ncloc no está disponible en el momento de la ejecución, la generación del informe se paralizará.${ncloc!} : Reemplaza la expresión ncloc son su valor si éste existe.${ncloc!"No lines"} : Reemplaza la expresión ncloc son su valor si éste existe. Si no, mostrará "No hay líneas"[#if ncloc > 10000] : Si ncloc > 10000 mostramos todo hasta "else", de lo contrario, mostramos el siguiente bloque de texto.Big project[#else]Small project [/#if]Debe tener cuidado con cómo OpenOffice/LibreOffice genera las plantillas. A menudo sucede que las expresiones no se guardan como un solo elemento. Para solucionar esto, debemos hacer clic en "borrar formato directo" (seleccionar texto y hacer clic con el botón derecho).
Tenga en cuenta que, para que funcione correctamente, todas las expresiones deben estar bien formadas y deben ser evaluables.
Las variables disponibles son todas las métricas existentes en SonarQube para el proyecto, donde los guiones ('-') han sido reemplazados por subrayados ('_').
Además, puedes utilizar estas variables para introducir metadatos del proyecto:
project_name: Nombre del proyecto, app o portfolio de SonarQube
project_key: Clave del proyecto, app o portfolio de SonarQube
project_version: Versión del proyecto, app o portfolio de SonarQube
analysis_date: Fecha de análisis del proyecto o app de SonarQube
project_analysis_id: Identificador del análisis del proyecto o app de SonarQube
branch_name: Nombre de la rama del proyecto o app de SonarQube
project_quality_gate_id: Identificador del Quality Gate del proyecto, app o portfolio de SonarQube
project_quality_gate_name: Nombre del Quality Gate del proyecto, app o portfolio de SonarQube
project_quality_gate_is_default: Devuelve true si el Quality Gate del proyecto, app o portfolio de SonarQube es el de por defecto o false si no lo es
isPullRequest: Devuelve true si el reporte es generado desde una Pull Request o false si no lo es
pull_request: Devuelve la clave de la Pull Request (si el reporte es generado desde una Pull Request)
issues_breakdown: Lista con todas las issues ordenadas por severidad y cantidad
severity: Severidad de la issue
ruleMessage: Mensaje de la regla
type: Tipo de Issue (Bug, Vulnerability, Code Smell)
ruleLanguageName: Lenguaje de la Issue (Java, Javascript,...)
issueCount: Total de issues por regla
[#list issues_breakdown as issue]
Severity : ${issue.severity}
Rule : ${issue.ruleMessage}
Type : ${issue.type}
Language : ${issue.ruleLanguageName}
Issues : ${issue.issueCount}
[/#list]
quality_gate_details
status: Estado del Quality Gate del proyecto
conditions: Lista con las condiciones del Quality Gate
message: Mensaje de la condición
value: Valor actual de la condición
status: Estado de la condición
threshold: Threshold de la condición configurado
comparator: Tipo de comparador de la condición(>,<,=,≠)
type: Tipo de condición (RATING,PERCENTAGE,NUMBER)
Project status: ${quality_gate_details}
Conditions: [#list quality_gate_details.conditions as condition]
Condition message : ${condition.message}
Condition value : ${condition.value}
Condition status : ${condition.status}
Condition threshold : ${condition.threshold}
Condition comparator: ${condition.comparator}
Condition type : ${condition.type}
[#/list]
sonarqube_project
key: Clave del proyecto, app o portfolio de SonarQube
name: Nombre del proyecto, app o portfolio de SonarQube
lastAnalysis: Último análisis del proyecto, app o portfolio de SonarQube
version: Versión del proyecto de SonarQube(Solo proyectos)
sonarQubeQualifierKey: Clave del calificativo del proyecto, app o portfolio de SonarQube (TRK, APP, VM, SVW)
sonarQubeQualifierName: Nombre del calificativo del proyecto, app o portfolio de SonarQube (PROJECT, APPLICATION, PORTFOLIO)
sonarQubeQualifierTranslated: Nombre traducido del calificativo del proyecto, app o portfolio de SonarQube (Proyecto, Aplicación, Portfolio)
qualityGateStatus: Estado del QualityGate del proyecto, app o portfolio de SonarQube (OK, ERROR, NONE)
branchName: Nombre de la rama
isMainBranch: Dice si la rama selecciona es la principal o no (true, false)
Nota: Los valores son cadenas de texto no booleanos
Project Key: ${sonarqube_project.key}
Project Name: ${sonarqube_project.name}
Project Last Analysis: ${sonarqube_project.lastAnalysis}
Project Version: ${sonarqube_project.version}
Project Qualifier Key: ${sonarqube_project.sonarQubeQualifierKey}
Project Qualifier Name: ${sonarqube_project.sonarQubeQualifierName}
Project Qualifier Translated: ${sonarqube_project.sonarQubeQualifierTranslated}
Project Quality Gate: ${sonarqube_project.qualityGateStatus}
Project Branch Name: ${sonarqube_project.branchName}
Is Main Branch: ${sonarqube_project.isMainBranch}
Comprueba la plantilla por defecto para ver ejemplos de como funciona.
Probar
400 €/año