Check agent is correctly installed during plugin startup #1000
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.
Users currently submit a number of reports for Sonarqube reporting that branch analysis is not available despite them having the plugin installed, which are typically triggered by the user not having set up the Java agent on one of the components correctly. This is compounded by the Sonarqube plugin screen showing the plugin as being installed in these scenarios even where the plugin's classes and configuration have not been fully loaded into Sonarqube. To overcome this, the plugin bootstrap class is now checking for the agent having made an alteration to one of the bootstrap methods as an indication that the agent has run successfully for both the Compute Engine and Web components, with the plugin failing to start if either component doesn't detect the agent modifications, and therefore preventing the Sonarqube server starting. Whilst this won't fully resolve the problem of users not installing the plugin properly, it prevents them believing the plugin is installed and then only finding out things aren't right at the point they try and submit an analysis with branch or pull request properties.