use sonar.host.url (not sonar.core.serverBaseURL) for calling webservices #271
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In our company, the network environment is such that the public URL of SonarQube servers (defined by the
sonar.core.serverBaseURL
property in the server config) is not the same as the internal URL which can be reached from the Gitlab-CI runners. This is usually not an issue at all for running SQ analysis (what matters is thesonar.host.url
property set for the SonarQube Scanner, and all webservices are called from the Gitlab-CI runners with his URL, not the public one). But with the sonar-gitlab-plugin, it became an issue, because this plugin tries to use the public URL to call a webservice (to retrieve the Quality Gate status at the end of the analysis).This patch tries to fix that: it introduces a distinction between
GitLabPluginConfiguration.baseUrl
(the public URL, to be used for user-facing links to SonarQube web pages) andGitLabPluginConfiguration.baseWsUrl
(which is basicallysonar.host.url
or thelocalhost:9000
default, thus whatever URL has actually been used for running this SonarQube analysis). The later is used in theSonarFacade
only, and the former is still used everywhere else.