Do you have any kind of “Theory of operation” or “Principles of operation” paper that explains what goes on during an analysis (for the various possible arrangements, e.g., using Maven running under Jenkins with the sonar-maven plugin and a remote SQ server)? (Preferably with block diagrams…)
I’ve been trying to wrap my head around this process, and most of the docs explain one small piece of the puzzle, which is hard to put into context without knowing the big picture.
For instance, I can see from the Jenkins log files that early in the build, Maven fetches the quality profiles from the SQ server, and at the end, it sends a large file to the SQ server for post-processing. Is there any interaction with the server in between these two points?
Also, does whatever does the scanning (whether sonar-scanner or one of the plugins) ever talk to the sonar database directly, or does all interaction with that database come exclusively from the SQ server?
(My particular setup is: machine M1 runs Jenkins, which uses Maven to build and sonar-maven-plugin to analyze; machine M2 runs the SQ server, and machine M3 hosts the sonar database that M2 uses.)