- Docker >= 2.0.0.3
- NPM >= 6.9.0
-
Preparar el repositorio a ser escaneado:
-
Instalar una herramienta para generar reporte de cobertura, se recomienda usar NYC:
npm i nyc -
Agregar comando
coveragea los scripts de del package.json:"coverage": "nyc --reporter=lcov --reporter=text-lcov npm test" -
Crear un archivo en la raíz del proyecto
sonar-project.propertiesusando el template de este repositorio.
-
-
Configurar variables de entorno:
-
En el servidor
export SONAR_DB_PATH=<ruta-absoluta-db>export SONAR_DB_PASSWORD=<tu-clave-secreta>export SONAR_DB_USER=<tu-usuario>Luego de levantar el servidor de SonarQube, se recomienda ingresar con el usuario:admin & pass:admin para cambiar el password que viene por defecto.
-
En el cliente
export PROJECT_PATH=<ruta-absoluta-tu-proyecto>export SONAR_USER=<usuario-sonar-server>export SONAR_PASSWORD=<password-sonar-server>export SONAR_URI=<url-puerto-de-sonarqube>Ejemplo:
export SONAR_URI=http://10.71.20.19:9000
-
-
Levantar el servidor de sonarqube:
npm run sonar-serverNota: Luego de levantar sonar, ir a
Administration > Projects > Managementy cambiar la configuraciónDefault visibility of new projects: Private -
Ejecutar escaneo de sonar:
npm run sonar-scanner
En caso de tener un error al momento de ejecutar el script, verificar que tenga permisos de ejecución. Para dar permisos de ejecución a los scripts correr los siguientes comandos:
chmod +x scripts/sonar-scanner.sh
chmod +x scripts/sonar-server.sh
Si tiene problemas al levantar la base de datos, se recomienda crear la carpeta por linea de comandos.
mkdir <path-deseado>/sonar-bd