How do I make Hudson/Jenkins fail if Sonar thresholds are breached?
Solution 1
Install the build breaker plugin.
Fails your build if the code breaches any of the alert thresholds you specify on the project's Sonar quality profile.
Update
Sonarqube no longer recommends the use of this plugin:
Update (2019-02-11)
It appears the product has changed since I wrote this answer 7 years ago
Solution 2
Use Jenkins Quality Gates Plugin, which fails the build if the predefined sonar quality gates are not green.
- Plugin ID quality-gates
- Latest Release 2.5
- Latest Release Date May 17, 2016
- Required Core 1.625.3
This plugin will stop a job when a quality gate measures is detected.
laura
Updated on July 07, 2022Comments
-
laura almost 2 years
I am using maven to build my java app, Jenkins for CI and Sonar for metrics.
Currently I have a build job that creates the sonar report. (Triggered via a post-build step in Jenkins.)
I would like to set this up to fail the build if certain thresholds are met - i.e. any major or blocker violations or Complexity more than 1.7.
Any guidance would be appreciated! - L
-
June over 8 yearsUnfortunately the Build Breaker plugin is unavailable for Sonar 5.2+
-
ianaz over 7 yearsI was using it to fail pull requests with Github... what a shame
-
Ben over 5 yearsNot being able to break a build, when static analysis fails in Sonar is IMO a deal-breaker on using Sonar. The only way to ensure that 'code smell's'/'bugs' are not addressed during check'ins is by breaking the build. Would we put up with not being able to break a build when unit tests fail? IMO it's the same thing. Not having this built-in to Sonar gradle plugin bewilders me. Yes, there is a problem with a synchronous build vs async Sonar processing, but this is an implementation problem. If Sonar are serious about what they do, this is a must have.
-
Mark O'Connor over 5 years@Ben I don't disagree. When I wrote this answer 7 years ago the plugin worked perfectly. I would encourage you to take this up with SonarQube
-
Mark O'Connor over 5 years@Ben It appears breaking the build is supported in Jenkins pipelines. I've updated my answer
-
Ben over 5 yearsYes, sorry my first comment was aimed at SonarQube not yourself :-). Thanks, I saw that Jenkins support. Alas, we use TeamCity. Cheers
-
Ben Ketteridge about 4 yearsSonar have updated their advice with new suggestions: blog.sonarsource.com/…
-
Ente about 4 yearslast link reports 404 for me