From a38f0f119181ac798f2b66ee7cfadd579da8be64 Mon Sep 17 00:00:00 2001 From: Piotr Jaszczyk Date: Mon, 11 Mar 2019 14:16:39 +0100 Subject: Assure coverage is checked for all modules Change-Id: Ia9bb6cef9154d64cfa45455e38c9fe7603a64c74 Issue-ID: DCAEGEN2-1328 Signed-off-by: Piotr Jaszczyk --- build/hv-collector-coverage/check-coverage.sh | 46 ++++-- build/hv-collector-coverage/pom.xml | 16 ++ sources/hv-collector-core/pom.xml | 4 - sources/hv-collector-ct/pom.xml | 1 + sources/hv-collector-dcae-app-simulator/pom.xml | 4 - sources/hv-collector-domain/pom.xml | 4 - sources/hv-collector-health-check/pom.xml | 4 - sources/hv-collector-main/pom.xml | 4 - sources/hv-collector-ssl/pom.xml | 4 - sources/hv-collector-test-utils/pom.xml | 1 + sources/hv-collector-utils/pom.xml | 4 - sources/hv-collector-ves-message-generator/pom.xml | 4 - sources/hv-collector-xnf-simulator/pom.xml | 4 - sources/pom.xml | 168 +++++++++++---------- 14 files changed, 142 insertions(+), 126 deletions(-) diff --git a/build/hv-collector-coverage/check-coverage.sh b/build/hv-collector-coverage/check-coverage.sh index 956891ac..cfd8f87f 100755 --- a/build/hv-collector-coverage/check-coverage.sh +++ b/build/hv-collector-coverage/check-coverage.sh @@ -3,6 +3,7 @@ set -euo pipefail JACOCO_REPORT="$1" MIN_COVERAGE_PERCENT="$2" +ROOT_SOURCES_MODULE_POM="$3" LOG_FILE=target/check-coverage.log function coverage_from_report() { @@ -10,21 +11,38 @@ function coverage_from_report() { xpath -q -e "$xpath_expr" "$JACOCO_REPORT" 2>> ${LOG_FILE} } -missed=$(coverage_from_report missed) -covered=$(coverage_from_report covered) -total=$(($missed + $covered)) -coverage=$((100 * $covered / $total)) +function check_preconditions() { + local num_deps=$(grep -c 'project\.parent\.groupId' pom.xml) + local num_submodules=$(grep -c '' ${ROOT_SOURCES_MODULE_POM}) + local difference=$((${num_submodules}-${num_deps})) -if [[ $(wc -c < ${LOG_FILE}) > 0 ]]; then - echo "Warnings from xpath evaluation:" - cat ${LOG_FILE} - echo -fi + if [[ ${difference} -ne 0 ]]; then + echo "Not all modules are included in the coverage report." + echo "Verify if all submodules of hv-collector-sources module are included as a dependency to hv-collector-coverage module." + echo "Number of missing modules: ${difference}" + exit 1 + fi +} + +function check_coverage() { + local missed=$(coverage_from_report missed) + local covered=$(coverage_from_report covered) + local total=$(($missed + $covered)) + local coverage=$((100 * $covered / $total)) -echo "Coverage: $coverage% (covered/total: $covered/$total)" + if [[ $(wc -c < ${LOG_FILE}) > 0 ]]; then + echo "Warnings from xpath evaluation:" + cat ${LOG_FILE} + echo + fi -if [[ ${coverage} -lt ${MIN_COVERAGE_PERCENT} ]]; then - echo "Coverage is too low. Minimum coverage: $MIN_COVERAGE_PERCENT%" - exit 1 -fi + echo "Coverage: $coverage% (covered/total: $covered/$total)" + + if [[ ${coverage} -lt ${MIN_COVERAGE_PERCENT} ]]; then + echo "Coverage is too low. Minimum coverage: $MIN_COVERAGE_PERCENT%" + exit 1 + fi +} +check_preconditions || exit 1 +check_coverage || exit 2 diff --git a/build/hv-collector-coverage/pom.xml b/build/hv-collector-coverage/pom.xml index 9b3f257a..08fc5a22 100644 --- a/build/hv-collector-coverage/pom.xml +++ b/build/hv-collector-coverage/pom.xml @@ -90,6 +90,7 @@ target/site/jacoco-aggregate/jacoco.xml ${jacoco.minimum.coverage} + ${project.parent.parent.basedir}/sources/pom.xml @@ -97,6 +98,11 @@ + + ${project.parent.groupId} + hv-collector-commandline + ${project.parent.version} + ${project.parent.groupId} hv-collector-core @@ -127,6 +133,16 @@ hv-collector-main ${project.parent.version} + + ${project.parent.groupId} + hv-collector-ssl + ${project.parent.version} + + + ${project.parent.groupId} + hv-collector-test-utils + ${project.parent.version} + ${project.parent.groupId} hv-collector-utils diff --git a/sources/hv-collector-core/pom.xml b/sources/hv-collector-core/pom.xml index ae781742..29e1ea94 100644 --- a/sources/hv-collector-core/pom.xml +++ b/sources/hv-collector-core/pom.xml @@ -40,10 +40,6 @@ hv-collector-core VES HighVolume Collector :: Core - - false - - diff --git a/sources/hv-collector-ct/pom.xml b/sources/hv-collector-ct/pom.xml index 47b707a6..61d11392 100644 --- a/sources/hv-collector-ct/pom.xml +++ b/sources/hv-collector-ct/pom.xml @@ -43,6 +43,7 @@ false true + true diff --git a/sources/hv-collector-dcae-app-simulator/pom.xml b/sources/hv-collector-dcae-app-simulator/pom.xml index 8f6b061a..b82c001a 100644 --- a/sources/hv-collector-dcae-app-simulator/pom.xml +++ b/sources/hv-collector-dcae-app-simulator/pom.xml @@ -40,10 +40,6 @@ hv-collector-dcae-app-simulator VES HighVolume Collector :: Dcae app simulator - - false - - diff --git a/sources/hv-collector-domain/pom.xml b/sources/hv-collector-domain/pom.xml index bac42a2f..142dfb05 100644 --- a/sources/hv-collector-domain/pom.xml +++ b/sources/hv-collector-domain/pom.xml @@ -40,10 +40,6 @@ hv-collector-domain VES HighVolume Collector :: Domain - - false - - diff --git a/sources/hv-collector-health-check/pom.xml b/sources/hv-collector-health-check/pom.xml index 86c9efc7..8f5c0d5e 100644 --- a/sources/hv-collector-health-check/pom.xml +++ b/sources/hv-collector-health-check/pom.xml @@ -12,10 +12,6 @@ - - false - - org.onap.dcaegen2.collectors.hv-ves hv-collector-sources diff --git a/sources/hv-collector-main/pom.xml b/sources/hv-collector-main/pom.xml index d08a21e0..0fe240c5 100644 --- a/sources/hv-collector-main/pom.xml +++ b/sources/hv-collector-main/pom.xml @@ -40,10 +40,6 @@ hv-collector-main VES HighVolume Collector :: Main - - false - - diff --git a/sources/hv-collector-ssl/pom.xml b/sources/hv-collector-ssl/pom.xml index 48e9be78..617265bb 100644 --- a/sources/hv-collector-ssl/pom.xml +++ b/sources/hv-collector-ssl/pom.xml @@ -40,10 +40,6 @@ hv-collector-ssl VES HighVolume Collector :: SSL - - false - - diff --git a/sources/hv-collector-test-utils/pom.xml b/sources/hv-collector-test-utils/pom.xml index a755ae7b..aa18114b 100644 --- a/sources/hv-collector-test-utils/pom.xml +++ b/sources/hv-collector-test-utils/pom.xml @@ -24,6 +24,7 @@ false false + true diff --git a/sources/hv-collector-utils/pom.xml b/sources/hv-collector-utils/pom.xml index e65cbd2f..feba8123 100644 --- a/sources/hv-collector-utils/pom.xml +++ b/sources/hv-collector-utils/pom.xml @@ -30,10 +30,6 @@ - - false - - org.onap.dcaegen2.collectors.hv-ves hv-collector-sources diff --git a/sources/hv-collector-ves-message-generator/pom.xml b/sources/hv-collector-ves-message-generator/pom.xml index 7cb7d4ef..f39912de 100644 --- a/sources/hv-collector-ves-message-generator/pom.xml +++ b/sources/hv-collector-ves-message-generator/pom.xml @@ -40,10 +40,6 @@ hv-collector-ves-message-generator VES HighVolume Collector :: VES message generator - - false - - diff --git a/sources/hv-collector-xnf-simulator/pom.xml b/sources/hv-collector-xnf-simulator/pom.xml index aae04b42..7f76acbf 100644 --- a/sources/hv-collector-xnf-simulator/pom.xml +++ b/sources/hv-collector-xnf-simulator/pom.xml @@ -40,10 +40,6 @@ hv-collector-xnf-simulator VES HighVolume Collector :: XNF simulator - - false - - diff --git a/sources/pom.xml b/sources/pom.xml index 0775844f..30c15252 100644 --- a/sources/pom.xml +++ b/sources/pom.xml @@ -42,82 +42,98 @@ VES HighVolume Collector :: Sources pom - - - - maven-checkstyle-plugin - 2.17 - - - org.onap.oparent - checkstyle - 1.1.1 - - - - - - check-license-kotlin - - check - - process-sources - - onap-checkstyle/check-license.xml - false - true - false - **\/*.kt - true - - - - - - - org.apache.maven.plugins - maven-antrun-plugin - 1.8 - - - - detekt - verify - - run - - - - - - - - - - - - - - - - - - - - io.gitlab.arturbosch.detekt - detekt-cli - ${detekt.version} - - - ${project.groupId} - hv-collector-analysis - 1.1.0-SNAPSHOT - - - - - + + false + + + + + analysis + + + src/main/kotlin + + + + + + maven-checkstyle-plugin + 2.17 + + + org.onap.oparent + checkstyle + 1.1.1 + + + + + + check-license-kotlin + + check + + process-sources + + onap-checkstyle/check-license.xml + false + true + false + **\/*.kt + true + + + + + + + org.apache.maven.plugins + maven-antrun-plugin + 1.8 + + + + detekt + verify + + run + + + + + + + + + + + + + + + + + + + + io.gitlab.arturbosch.detekt + detekt-cli + ${detekt.version} + + + ${project.groupId} + hv-collector-analysis + 1.1.0-SNAPSHOT + + + + + + + hv-collector-commandline -- cgit 1.2.3-korg