We are using the following release workflow: a release branch “release/…1.2.3” is created from the develop branch and after a manual confirmation the CI builds release packages 1.2.3 and creates the Git tags accordingly. There is no “master” branch but the release branch is merged back to the develop branch afterwards.
Now the problem is that it would be beneficial using
sonar.projectVersion to be able to compare the different versions but it seems to be treated per branch so a version “created” during the build of one release branch is not “seen” from other branches. So the whole feature only works if there is a common branch from which all versions are built/created.
I understand that the commonly used pattern is to make release builds from a “master” branch but the problem is that you are testing a different build (from the release branch) than you are releasing/deploying at the end when building the master branch.
Wouldn’t it make more sense to make the “versions” project-specific instead of branch-specific so it does not matter where the version came from as IMO there will be no conflicting versions anyway for the same project.
- SonarQube 7.9, soon 8.4