1
0

[HUDI-896] Report test coverage by modules & parallelize CI (#1753)

- use codecov flags for each module to report coverage
- parallelize CI jobs for shorter time
- add a testcase for MetricsReporterFactory (to trigger codecov comment)
This commit is contained in:
Raymond Xu
2020-06-27 23:16:12 -07:00
committed by GitHub
parent 2603cfb33e
commit 31247e9b34
11 changed files with 347 additions and 127 deletions

33
scripts/report_coverage.sh Executable file
View File

@@ -0,0 +1,33 @@
#!/bin/bash
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
modules=(
hudi-cli
hudi-client
hudi-common
hudi-examples
hudi-hadoop-mr
hudi-hive-sync
hudi-integ-test
hudi-spark
hudi-timeline-service
hudi-utilities
)
for module in "${modules[@]}"; do
bash <(curl -s https://codecov.io/bash) -s "$module" -F "${module//-/}"
done

View File

@@ -17,24 +17,26 @@
# limitations under the License.
mode=$1
modules=$2
sparkVersion=2.4.4
hadoopVersion=2.7
if [ "$mode" = "unit" ];
then
if [ "$mode" = "unit" ]; then
mvn clean install -Punit-tests -DskipTests -q
echo "Running Unit Tests"
mvn test -DskipITs=true -B
elif [ "$mode" = "integration" ];
then
mvn test -Punit-tests -pl "$modules" -B
elif [ "$mode" = "functional" ]; then
echo "Running Functional Tests"
mvn test -Pfunctional-tests -B
elif [ "$mode" = "integration" ]; then
echo "Downloading Apache Spark-${sparkVersion}-bin-hadoop${hadoopVersion}"
wget http://archive.apache.org/dist/spark/spark-${sparkVersion}/spark-${sparkVersion}-bin-hadoop${hadoopVersion}.tgz -O /tmp/spark-${sparkVersion}.tgz
tar -xvf /tmp/spark-${sparkVersion}.tgz
export SPARK_HOME=$PWD/spark-${sparkVersion}-bin-hadoop${hadoopVersion}
mkdir /tmp/spark-events/
echo "Running Integration Tests"
mvn verify -DskipUTs=true -B
mvn verify -Pintegration-tests -B
else
echo "Unknown mode $mode"
exit 1;
exit 1
fi