I have some custom Roslyn analyzers we want to upload onto our SonarQube server ( Version 220.127.116.11107, community edition)
We want to upload them with the Roslyn SDK to use Quality Profiles and we want to keep VB and C# consistent in our environment since people are using both.
Looking through the source code of the SDK in Argumentprocessor.cs (in RoslynPluginGenerator/CommandLine) I can see that there is a TODO to support multiple languages but that was added 6 years ago by the looks of it:
When switching this line to be hard coded for Visual Basic like so:
I am able to build another SDK version and it is able to find the VB.net analyzers and create jar files for them.
I can then upload them to my SonarQube server but they do not show up there under the VB.net rules
(If I switch the analyzer to a C# one, I am able to upload the jar files, and can see it reflected under the C# rules - I am following the same process for the VB rules so I believe this is something with the jar file).
Looking inside the jar file the SDK, that I switched to VB, creates the configuration.xml is referencing vb as the RepositoryLanguage.
So, the question is:
Are there any plans to add this functionality soon (possibly with the 3.0 release)?
Or, are there any additional ideas of what else needs to be changed for the VB version to work?
The only messages I have seen in the logs regarding this are these two but there are working C# rules that have corresponding messages so they shouldn’t be the problem
(Not sure where else to go for debugging information on the Server - any help with that would also be appreciated)
- [o.s.u.c.UpdateCenter] The plugin ‘closeconnectioninfinallyblock’ version : 1.0.0 has not been found on the update center.
- INFO web[o.s.s.p.ServerPluginManager] Deploy plugin CloseConnectionInFinallyBlock / 1.0.0 / null
- [o.s.s.r.RegisterRules] Disable rule roslyn.closeconnectioninfinallyblock.cs:CloseConnectionInFinallyBlock
*This last one looks to be referring to the test C# one when I switched the analyzer type