/sonar-quality-gates-build-breaker

SonarQube ❤ Build Breaker designed to Fail pipeline builds according to Quality Gates️

Primary LanguageJavaMIT LicenseMIT

SonarQube 💥 Build Breaker Build Status Download Maven Central

SonarQube Build Breaker designed to fail SonarQube analysis during CI pipeline build if quality grates not passed

SonarQube 💥 Build Breaker

Easy as 1-2-3

Maven plugin quick start

  1. add sonar-breaker-maven-plugin in your project pom.xml file:

    <project>
        <build>
            <plugins>
                <plugin>
                    <groupId>com.github.daggerok.sonar</groupId>
                    <artifactId>sonar-breaker-maven-plugin</artifactId>
                    <version>1.0.1</version>
                    <!--
                    <configuration>
                        <delay>1</delay>
                        <retry>100</retry>
                        <standalone>false</standalone>
                        <allowFailure>false</allowFailure>
                        <projectBaseDir>${maven.multiModuleProjectDirectory}</projectBaseDir>
                        <metadataFilePath>${maven.multiModuleProjectDirectory}/target/sonar/report-task.txt</metadataFilePath>
                        <metricsExcludes>new_coverage</metricsExcludes>
                    </configuration>
                    -->
                </plugin>
            </plugins>
        </build>
    </project>

    see sonar-breaker-maven-plugin pom.xml file

  2. NOTE: Do not forget setup sonar-maven-plugin as well, sonar-breaker will be use analysis metadata generated by sonar:sonar goal execution

  3. build project, run sonar analysis and run sonar-breaker analyzer:

    mvn clean install sonar:sonar sonar-breaker:analyze 

Sonar Breaker standalone quick start

  • build project and examin sonar analysis:

    mvn install sonar:sonar 
  • download latest sonar-breaker executable jar file.

    wget -O sb.jar https://repo1.maven.org/maven2/com/github/daggerok/sonar/sonar-breaker/1.0.1/sonar-breaker-1.0.1.jar
  • finally run sonar-breaker analysis:

    java -jar sb.jar target/sonar/report-task.txt

see examples

enjoy your bugs free code! 👍