Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

250
Vistas
Exportar/Importar conjunto de reglas de Visual Studio 2015 en SonarQube

Entorno : Estamos creando código C# dentro de Visual Studio 2015 y generando un informe de CodeAnalysis utilizando el conjunto de reglas predeterminado disponible dentro de Visual Studio 2015.

Declaración del problema : al ejecutar el mismo código en SonarQube integrado con nuestro entorno de integración continua Jenkins, obtenemos un informe de análisis de código diferente, por lo que queremos importar el conjunto de reglas predeterminado de Visual Studio 2015 para usar dentro de SonarQube 5.6 o posterior ( Estoy listo para actualice Sonar si hay una solución ). Pero el problema es que SonarQube no puede reconocer el conjunto de reglas que comienza con CS , como...

 <Rules AnalyzerId="Microsoft.CodeAnalysis.CSharp" RuleNamespace="Microsoft.CodeAnalysis.CSharp"> <Rule Id="AD0001" Action="Error" /> <Rule Id="CS0028" Action="Error" /> <Rule Id="CS0078" Action="Error" /> <Rule Id="CS0105" Action="Error" /> <Rule Id="CS0108" Action="Error" /> <Rule Id="CS0109" Action="Error" />

Ya tengo los siguientes complementos instalados:

  1. Analizador de código para C#
  2. CodeCracker para C#
about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Respuesta corta: no hay una forma compatible de hacer esto. Pero puedes intentar hackear un poco para resolver esto.

Respuesta larga

Hay varios problemas que tendrías que resolver:

  • El escáner SonarQube para MsBuild, que probablemente esté utilizando para enviar el resultado del análisis al servidor SonarQube, está extrayendo las reglas activas del servidor SQ. Luego, esto se pasa a la tarea CoreCompile en msbuild a través del parámetro del conjunto de ruleset . Entonces, incluso si creaste uno propio, eso se eliminaría de los parámetros y se cambiaría al de Sonar.
  • El paso final envía los problemas al servidor SQ, pero el servidor SQ ignorará cualquier ID de regla que no se conozca. Entonces, en su caso, se ignorarán todos los problemas de CS* .

Por el momento no creo que haya una solución fácil a estos problemas. La sugerencia general sería crear su complemento SQ, que define todas las reglas de CS* . Obtenga estas reglas en el archivo de conjunto de reglas (probablemente entre la fase de inicio y la de compilación), analice el archivo json de salida y envíe los resultados al servidor. Esto funcionaría, pero es una tarea bastante grande, y hay muchos lugares donde esto puede volverse loco.

Otro enfoque es echar un vistazo al SDK de SonarQube Roslyn . Este SDK le permite crear un complemento de SonarQube a partir de los analizadores nuget de Roslyn. Si crea un complemento de este tipo, verá que tiene 2-3 archivos XML incrustados. Estos archivos describen las reglas del complemento. Para apoyar su caso yo:

  • Cree un paquete de analizador Roslyn con una regla. (Lo que no informa ningún problema).
  • Cambie los archivos incrustados para definir las reglas de CS* . Probablemente no sea tan fácil obtener una lista de todas las reglas de CS* , pero este podría ser un buen comienzo.
  • Implemente el complemento SQ en el servidor SQ y espere que funcione.
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda