diff --git a/README.adoc b/README.adoc index bbaad202c1..927efe2d0f 100644 --- a/README.adoc +++ b/README.adoc @@ -7,6 +7,7 @@ :documentation_url: http://cloud.spring.io/spring-cloud-contract/ image::https://badges.gitter.im/Join%20Chat.svg[Gitter, link="https://gitter.im/spring-cloud/spring-cloud-contract?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"] +image::https://codecov.io/gh/spring-cloud/spring-cloud-contract/branch/master/graph/badge.svg["codecov", link="https://codecov.io/gh/spring-cloud/spring-cloud-contract"] image:https://circleci.com/gh/spring-cloud/spring-cloud-contract.svg?style=svg["CircleCI", link="https://circleci.com/gh/spring-cloud/spring-cloud-contract"] = Spring Cloud Contract diff --git a/circle.yml b/circle.yml index dfbaf27a90..1266d965dd 100644 --- a/circle.yml +++ b/circle.yml @@ -31,6 +31,7 @@ test: - mkdir -p $CIRCLE_TEST_REPORTS/junit/ - find . -type f -regex ".*/target/.*-reports/.*" -exec cp {} $CIRCLE_TEST_REPORTS/junit/ \; - find . -type f -regex ".*/build/test-results/.*" -exec cp {} $CIRCLE_TEST_REPORTS/junit/ \; + - bash <(curl -s https://codecov.io/bash) notify: webhooks: # A list of hook hashes, containing the url field diff --git a/docs/src/main/asciidoc/README.adoc b/docs/src/main/asciidoc/README.adoc index 3aa42d480a..1225de1063 100644 --- a/docs/src/main/asciidoc/README.adoc +++ b/docs/src/main/asciidoc/README.adoc @@ -5,6 +5,7 @@ :documentation_url: http://cloud.spring.io/spring-cloud-contract/ image::https://badges.gitter.im/Join%20Chat.svg[Gitter, link="https://gitter.im/spring-cloud/spring-cloud-contract?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"] +image::https://codecov.io/gh/spring-cloud/spring-cloud-contract/branch/master/graph/badge.svg["codecov", link="https://codecov.io/gh/spring-cloud/spring-cloud-contract"] image:https://circleci.com/gh/spring-cloud/spring-cloud-contract.svg?style=svg["CircleCI", link="https://circleci.com/gh/spring-cloud/spring-cloud-contract"] = Spring Cloud Contract diff --git a/pom.xml b/pom.xml index 4964721699..605793f433 100644 --- a/pom.xml +++ b/pom.xml @@ -221,6 +221,48 @@ + + sonar + + + + org.jacoco + jacoco-maven-plugin + + + pre-unit-test + + prepare-agent + + + surefireArgLine + ${project.build.directory}/jacoco.exec + + + + post-unit-test + test + + report + + + + ${project.build.directory}/jacoco.exec + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + + ${surefireArgLine} + + + + + diff --git a/scripts/build.sh b/scripts/build.sh index 04d89f3f6b..900896b488 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -13,7 +13,7 @@ fi ADDITIONAL_MAVEN_OPTS=${ADDITIONAL_MAVEN_OPTS:--Dmaven.test.redirectTestOutputToFile=true -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn} echo "Building Maven stuff with additional opts [$ADDITIONAL_MAVEN_OPTS]" -./mvnw clean install --batch-mode $ADDITIONAL_MAVEN_OPTS +./mvnw clean org.jacoco:jacoco-maven-plugin:prepare-agent install -Psonar --batch-mode $ADDITIONAL_MAVEN_OPTS echo "Building Gradle plugin" -(cd *-gradle-plugin; ./gradlew clean build install) +(cd *-gradle-plugin; ./gradlew clean build install jacocoTestReport) diff --git a/spring-cloud-contract-verifier-gradle-plugin/build.gradle b/spring-cloud-contract-verifier-gradle-plugin/build.gradle index 1d65bfc339..50db4a3a50 100644 --- a/spring-cloud-contract-verifier-gradle-plugin/build.gradle +++ b/spring-cloud-contract-verifier-gradle-plugin/build.gradle @@ -28,6 +28,7 @@ project.version = findProperty('verifierVersion') ?: '1.0.0.BUILD-SNAPSHOT' apply from: "$rootDir/gradle/release.gradle" apply plugin: 'groovy' apply plugin: 'eclipse' +apply plugin: "jacoco" group = 'org.springframework.cloud' @@ -122,6 +123,10 @@ configurations { } } +jacoco { + toolVersion = "0.7.7.201606060606" +} + task resolveDependencies { doLast { project.rootProject.allprojects.each { subProject ->