gabrie-allaigre / sonar-gitlab-plugin

Add to each commit GitLab in a global commentary on the new anomalies added by this commit and add comment lines of modified files
GNU Lesser General Public License v3.0
713 stars 207 forks source link

SonarQube 7.7+ support #241

Open aexvir opened 5 years ago

aexvir commented 5 years ago

Seeing that SonarQube 7.7 dropped support for the preview mode, which seemed essential for this plugin to work... is there any plan for reworking this so it can support future versions?

selkabli commented 5 years ago

hello about a week now every think was working great for me but this week every thing changed after a commit of a developer

that's log issue [ERROR] Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project sofid-parent: null: MojoExecutionException: NullPointerException -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.sonarsource.scanner.maven:sonar-maven-plugin:3.6.0.1398:sonar (default-cli) on project sofid-parent: null at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:213) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:954) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288) at org.apache.maven.cli.MavenCli.main (MavenCli.java:192) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) Caused by: org.apache.maven.plugin.MojoExecutionException at org.sonarsource.scanner.maven.bootstrap.ScannerBootstrapper.execute (ScannerBootstrapper.java:67) at org.sonarsource.scanner.maven.SonarQubeMojo.execute (SonarQubeMojo.java:104) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:954) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288) at org.apache.maven.cli.MavenCli.main (MavenCli.java:192) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) Caused by: java.lang.NullPointerException at com.talanlabs.sonar.plugins.gitlab.GitLabApiV4Wrapper.createOrUpdateSonarQubeStatus (GitLabApiV4Wrapper.java:211) at com.talanlabs.sonar.plugins.gitlab.CommitFacade.createOrUpdateSonarQubeStatus (CommitFacade.java:128) at com.talanlabs.sonar.plugins.gitlab.CommitPublishPostJob.execute (CommitPublishPostJob.java:112) at org.sonar.scanner.postjob.PostJobWrapper.execute (PostJobWrapper.java:49) at org.sonar.scanner.postjob.PostJobsExecutor.execute (PostJobsExecutor.java:48) at org.sonar.scanner.postjob.PostJobsExecutor.execute (PostJobsExecutor.java:39) at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart (ProjectScanContainer.java:327) at org.sonar.core.platform.ComponentContainer.startComponents (ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute (ComponentContainer.java:122) at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart (GlobalContainer.java:128) at org.sonar.core.platform.ComponentContainer.startComponents (ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute (ComponentContainer.java:122) at org.sonar.batch.bootstrapper.Batch.doExecute (Batch.java:73) at org.sonar.batch.bootstrapper.Batch.execute (Batch.java:67) at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute (BatchIsolatedLauncher.java:46) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke (IsolatedLauncherProxy.java:60) at com.sun.proxy.$Proxy45.execute (Unknown Source) at org.sonarsource.scanner.api.EmbeddedScanner.doExecute (EmbeddedScanner.java:185) at org.sonarsource.scanner.api.EmbeddedScanner.execute (EmbeddedScanner.java:137) at org.sonarsource.scanner.maven.bootstrap.ScannerBootstrapper.execute (ScannerBootstrapper.java:65) at org.sonarsource.scanner.maven.SonarQubeMojo.execute (SonarQubeMojo.java:104) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:208) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:154) at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:146) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build (SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute (LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute (DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute (DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute (MavenCli.java:954) at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288) at org.apache.maven.cli.MavenCli.main (MavenCli.java:192) at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke (Method.java:498) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced (Launcher.java:289) at org.codehaus.plexus.classworlds.launcher.Launcher.launch (Launcher.java:229) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode (Launcher.java:415) at org.codehaus.plexus.classworlds.launcher.Launcher.main (Launcher.java:356) [ERROR] [ERROR] [ERROR] For more information about the errors and possible solutions, please read the following articles: [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

jakub-bochenski commented 5 years ago

There's some relevant discussion in https://github.com/gabrie-allaigre/sonar-gitlab-plugin/issues/222#issuecomment-477679354

alixwar commented 5 years ago

FYI: SonarSource has a backlog item regarding Gitlab integration but it seems unlikely to be done anytime soon (not planned and also scoped to their cloud solution):

This Epic is about SonarCloud only. There is no doubt that if things go well, an Epic will also be created to develop the integration with SonarQube too.

https://jira.sonarsource.com/browse/MMF-1750

alixwar commented 5 years ago

Update: There is now an epic to implement this for SonarQube as well (will not be implemented for SonarQube 7.x however, probably 8.x): https://jira.sonarsource.com/browse/MMF-1787

ghost commented 5 years ago

I confirm that we want to give a try to integrate nicely with gitlab, as we already do with github, bitbucket and azure devops 👍

Tcharl commented 5 years ago

@pierre-guillot-sonarsource what about integrating this plugin into the sonarqube marketplace and contributing to this repository, thus rewarding the developper that leads to that wonderful fully featured plugin and leading to far more than a 'Minimum marketable feature'

ghost commented 5 years ago

@Tcharl This plugin is already on the marketplace. Considering supporting this plugin officially, this is an interesting idea that we are discussing internally. We have to check if the licence and the intellectual property is compatible with reusing/forking this repo : the source code is Copyrighted by TalanLabs

bigboy1122 commented 4 years ago

@pierre-guillot-sonarsource when do you expect an outcome to this. This feature was important to our pipeline and not it doesn't work. Out company doesn't want to hack a solution together. What will it take to expedite this?

ghost commented 4 years ago

@bigboy1122 no ETA so far. You can watch the sonarsource jira to get updated on topics that matter to you : https://jira.sonarsource.com/browse/MMF-1787

You can see that this subject has been divided into several smaller ones, and are in specification (authentication + support of MR).

mazmar commented 4 years ago

Would it be possible to support 7.7+ with branches plugin? branches configuration does not use preview mode at least it is not written in example

kayoub5 commented 4 years ago

I think the best course of action would be the following:

Trying to keep the original implementation model is impossible, since the original github repo https://github.com/SonarSource/sonar-github was archived and integrated into SonarQube core last year.

ghost commented 4 years ago

The maintainer of this repo seems inactive for a while, so if you want it to move forward i would suggest you to "officially" fork it.

Keep in mind that having a nice and smooth integration with GitLab is on our current roadmap. Once the merge request decoration get released (likely within SQ 8.1 or 8.2), feel free to reach us on the community forum for feedback and feature request.