If you’re interested in the release notes of the initial 3.3.0 version, we previously published a request on this forum but did not receive any answer : [NEW RELEASE] SonarQube CNES Report 3.3.0
unfortunately the new version still has this long known bug, when started via More / CNES Report
as admin {"errors":[{"msg":"An error has occurred. Please contact your administrator"}]}
sonar.log has
Apr 08, 2021 1:04:12 PM fr.cnes.sonar.report.ReportCommandLine execute
INFO: SonarQube URL: http://localhost:9000
Apr 08, 2021 1:04:12 PM fr.cnes.sonar.report.providers.SonarQubeInfoProvider getSonarQubeStatus
SEVERE: Insufficient privileges error sent by SonarQube server (code 403), please check your permissions in SonarQube configuration.
fr.cnes.sonar.report.exceptions.BadSonarQubeRequestException: Insufficient privileges error sent by SonarQube server (code 403), please check your permissions in SonarQube configuration.
at fr.cnes.sonar.report.providers.RequestManager.get(RequestManager.java:170)
at fr.cnes.sonar.report.providers.AbstractDataProvider.stringRequest(AbstractDataProvider.java:344)
at fr.cnes.sonar.report.providers.AbstractDataProvider.request(AbstractDataProvider.java:300)
at fr.cnes.sonar.report.providers.SonarQubeInfoProvider.getSonarQubeStatus(SonarQubeInfoProvider.java:67)
at fr.cnes.sonar.report.factory.ServerFactory.create(ServerFactory.java:70)
at fr.cnes.sonar.report.ReportCommandLine.execute(ReportCommandLine.java:109)
at fr.cnes.sonar.plugin.ws.ExportTask.handle(ExportTask.java:88)
at org.sonar.server.ws.WebServiceEngine.execute(WebServiceEngine.java:110)
at org.sonar.server.platform.web.WebServiceFilter.doFilter(WebServiceFilter.java:84)
at org.sonar.server.platform.web.MasterServletFilter$GodFilterChain.doFilter(MasterServletFilter.java:139)
at org.sonar.server.platform.web.SonarLintConnectionFilter.doFilter(SonarLintConnectionFilter.java:66)
at org.sonar.server.platform.web.MasterServletFilter$GodFilterChain.doFilter(MasterServletFilter.java:139)
at org.sonar.server.platform.web.MasterServletFilter.doFilter(MasterServletFilter.java:108)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.sonar.server.platform.web.UserSessionFilter.doFilter(UserSessionFilter.java:81)
at org.sonar.server.platform.web.UserSessionFilter.doFilter(UserSessionFilter.java:68)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.sonar.server.platform.web.CacheControlFilter.doFilter(CacheControlFilter.java:76)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.sonar.server.platform.web.SecurityServletFilter.doHttpFilter(SecurityServletFilter.java:76)
at org.sonar.server.platform.web.SecurityServletFilter.doFilter(SecurityServletFilter.java:48)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.sonar.server.platform.web.RedirectFilter.doFilter(RedirectFilter.java:58)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.sonar.server.platform.web.RequestIdFilter.doFilter(RequestIdFilter.java:66)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.sonar.server.platform.web.RootFilter.doFilter(RootFilter.java:62)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:544)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:143)
at ch.qos.logback.access.tomcat.LogbackValve.invoke(LogbackValve.java:256)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:353)
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:616)
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:831)
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1629)
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
at java.base/java.lang.Thread.run(Thread.java:834)
Apr 08, 2021 1:04:12 PM fr.cnes.sonar.report.ReportCommandLine execute
INFO: SonarQube online: false
The plugin should use the sonar.core.serverBaseURL setting !?
Really sorry about that. Hopefully there won’t be a next time, but if there is, feel free to ping me directly. (Yes, I normally yell at people for pinging folks not already involved in a thread, but this is different; it’s just anyone who can/does handle these plugin requests.) [Edit it’s not just anyone… ]
Regarding this version… There are two things to resolve
The startup failure that @Rebse reports. Gilbert just to be sure, what version of SonarQube are you seeing this problem on?
Less an issue but also a concern, why does this brand new version of the plugin end compatibility at 8.2?
i’ve read the compatibility matrix on github and in fact i’ve tried with the latest Sonarqube 8.8 version.
As you already mentioned, it doesn’t make sense to release a new plugin version compatible with Sonarqube 8.2 when the next LTS version 8.9 is just around the corner.
Also i believe Sonarqube 8.8 is not the problem.
Noticed this bug already from the beginning in 2019 with Sonarqube 7.9, see
and also with subsequent versions of the CNES report plugin.
@ganncamp
No problem at all, we know you’re pretty busy !
As we maintain this project during our free time, we perfectly understand that missing a thread is quite easy
@Rebse : please open an issue on GitHub, it will be easier for us to work/discuss on your issue. I don’t know if it’s a bug or a specific use/configuration on your side, but we’ll find someone to investigate quickly.
For the SonarQube 8.2 compatibility, it’s quite simple …
This 3.3.1 version is a bugfix version to patch the previous one, that was only compatible with SonarQube 8.2. (It’s the last patch we’ll ever do before the next major release.)
Our plugin depends heavily on SQ APIs, and as we don’t have much free time, we stopped trying to update the plugin for every 8.x release, and instead wait for the stable LTS one.
As the LTS is coming soon, we are now working on a new major release of the plugin with full compatibility with SQ 8.9.
If you think it’s better to wait for SQ8.9 compatibility, we could simply close this request.
What do you think ?
@Rebse : actually it works on our SonarQube instance and on many other so … I would like to know what your issue really is. That’s the only way I could be sure you could finally use our work !
@ganncamp : I perfectly understand, take the time you need. We will investigate on that issue too.
Provided all details i can give in the github issue, don’t have more, loglevel is DEBUG already.
And like already said, it’s the same behaviour for all versions of CNES report plugin i tested from 2019 on with different Sonarqube Enterprise versions, 7.9.1 … 8.8
It seems you can’t also reproduce the problem for other similar issues !?
Sorry it has taken me so long to come back to this. In fact I’ve been spearheading the 8.9 announcement, which is why I now have some head space to devote to this. Which leads to some unfortunate timing. Normally, a Marketplace request for compatibility with now-previous-LTS through not-latest would be rejected. But the fault is not on your side. Yes, you know that, but I want to get it in the thread for posterity. </ramble>
So, I’ve done a test of the new version on 7.9 CE with and without a non-default BaseURL value and had no problems with either. So since I’m not reproducing @Rebse’s issue (and thanks for reporting it here) and since the policy has been to support the previous LTS in the Marketplace for 6 months I’m moving ahead with this.
Thanks for your precious time & review !
And don’t blame yourself too much for this
We are actively working on a new major version for SQ 8.9 LTS.
The PR was updated accordingly (or so I hope !).
Regarding the issue @Rebse is facing, we still can’t reproduce it.
We think it’s environment specific, but we created an issue to find a better way to determine the server address.
Hopefully, it will solve this… we’ll stay in touch on GitHub.
As stated before, the 3.3.1 version is absolutly not compatible with SonarQube 8.9.x.
We are working on the next version, and already have implemented most of the planned features.
I can’t exactly tell when everything will be finished, but if you can’t wait, you could try to build the dev branch in order to have a kind of “beta” release of version 4.0.0.
Hopefully, it will be over by the end of this summer.
Version 4.0.0 is not out yet, but I previously said, the “dev” branch could be built to generate a “beta” release.
Otherwise, yes it is meant to work with SonarQube 8.9.
Your error seems like a classpath issue…
How did you find the JAR or how did you generate it ? Which Java version did you use ?
Ok, now I understand your error…
Your are executing sonarqube-community-branch-plugin-1.8.1.jar which is not the plugin we provide (sonar-cnes-report-x.y.z.jar).
The ReportCommandLine is indeed the main class of our plugin, but it does not exist inside the sonarqube-community-branch-plugin-1.8.1.jar, so that simply explains your error.
Our plugin is available here : https://github.com/cnescatlab/sonar-cnes-report
But the 4.0.0 version, with SonarQube 8.9 LTS compatibility, is not released yet !
If you want the JAR, you will have to build it yourself from the dev branch.