The GitHub Plugin is deprecated (if not officially, then at least in practical terms). Pull Requests analysis is now available in SonarCloud and PR decoration is available for GitHub and VSTS users.
Still, users of SonarQube can't benefit from those new features.
With this MMF, we want SonarQube users to also benefit from the built-in support for Pull Requests analysis and from the decoration of PRs in GitHub Enterprise.
The existing functionality as implemented for SonarCloud and GitHub should largely translate to SonarQube and GitHub Enterprise.
- PRs as first class citizens in SonarQube:
SonarQube should now allow to analyze PRS and to vizualize them in the UI. The restriction to SonarCloud should now be removed.
- PR decoration:
SonarQube should now support the integration with GitHub Enterprise.
The support for a GitHub App is not yet supported by SonarCloud and the support for Apps has been officially released in March of this year with GitHub Enterprise 2.13. The integration will then first rely on a "technical" GitHub user for which a token has to be generated and set in SonarQube.
SonarQube admin must be able to specify, in General Settings:
- the GitHub Enterprise URL. No default value, but there's no need to make an effort to specifically exclude GitHub.com.
- an Authentication token for the "technical" GitHub user.
Authentication token and GitHub repository can be specified at project level. Still, those properties are not mandatory since the CI engine can be configured to set the repository as a analysis property.
To be able to test this integration on an ongoing basis (i.e. ITs), we'll get access to a GitHub Enterprise instance.
At this writing, 2.13 is the current GitHub Enterprise version. Version 2.10 which was released in June 2017 will be deprecated in June 2018. Version 2.11 should be the minimum version we consider supporting.