diff --git a/.dockerignore b/.dockerignore
index e9401f0cc9e..0e3b22687d0 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -1,2 +1,3 @@
docs
+!docs/coverage
charts
diff --git a/.github/workflows/unit-tests.yaml b/.github/workflows/unit-tests.yaml
index 6e44b9ed600..4395827e92d 100644
--- a/.github/workflows/unit-tests.yaml
+++ b/.github/workflows/unit-tests.yaml
@@ -16,7 +16,11 @@ jobs:
restore-keys: |
${{ runner.os }}-maven-
- name: test java
- run: make test-java
+ run: make test-java-with-coverage
+ - uses: actions/upload-artifact@v2
+ with:
+ name: java-coverage-report
+ path: ${{ github.workspace }}/docs/coverage/java/target/site/jacoco-aggregate/
unit-test-python:
runs-on: ubuntu-latest
diff --git a/Makefile b/Makefile
index 9b23a3780a2..28d295f1778 100644
--- a/Makefile
+++ b/Makefile
@@ -46,6 +46,9 @@ lint-java:
test-java:
mvn test
+test-java-with-coverage:
+ mvn test jacoco:report-aggregate
+
build-java:
mvn clean verify
diff --git a/core/pom.xml b/core/pom.xml
index fdee512db55..e43e901d2e9 100644
--- a/core/pom.xml
+++ b/core/pom.xml
@@ -32,6 +32,11 @@
+
+ org.jacoco
+ jacoco-maven-plugin
+
+
org.springframework.boot
spring-boot-maven-plugin
@@ -187,7 +192,6 @@
org.mockito
mockito-core
- 2.23.0
test
diff --git a/docs/coverage/java/pom.xml b/docs/coverage/java/pom.xml
new file mode 100644
index 00000000000..3cc17d88425
--- /dev/null
+++ b/docs/coverage/java/pom.xml
@@ -0,0 +1,87 @@
+
+
+
+ 4.0.0
+
+
+
+
+ dev.feast
+ feast-parent
+ ${revision}
+ ../../..
+
+
+ Feast Coverage Java
+ feast-coverage
+
+
+ true
+
+
+
+
+ dev.feast
+ feast-ingestion
+ ${project.version}
+
+
+
+ dev.feast
+ feast-core
+ ${project.version}
+
+
+
+ dev.feast
+ feast-serving
+ ${project.version}
+
+
+
+ dev.feast
+ feast-sdk
+ ${project.version}
+
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+
+
+ report-aggregate
+ prepare-package
+
+ report-aggregate
+
+
+
+
+
+
+
+
diff --git a/ingestion/pom.xml b/ingestion/pom.xml
index ccc8ca04510..d29a1f49fe1 100644
--- a/ingestion/pom.xml
+++ b/ingestion/pom.xml
@@ -82,6 +82,11 @@
+
+
+ org.jacoco
+ jacoco-maven-plugin
+
diff --git a/pom.xml b/pom.xml
index fb50e531d7f..44929b14603 100644
--- a/pom.xml
+++ b/pom.xml
@@ -33,6 +33,7 @@
core
serving
sdk/java
+ docs/coverage/java
@@ -459,9 +460,9 @@
org.apache.maven.plugins
maven-surefire-plugin
- 2.22.1
+ 3.0.0-M4
- -Xms2048m -Xmx2048m -Djdk.net.URLClassPath.disableClassPathURLCheck=true
+ @{argLine} -Xms2048m -Xmx2048m -Djdk.net.URLClassPath.disableClassPathURLCheck=true
IntegrationTest
@@ -583,6 +584,18 @@
false
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.5
+
+
+
+ prepare-agent
+
+
+
+
org.springframework.boot
spring-boot-maven-plugin
diff --git a/sdk/java/pom.xml b/sdk/java/pom.xml
index e8a82a485fc..75d82edcc01 100644
--- a/sdk/java/pom.xml
+++ b/sdk/java/pom.xml
@@ -94,12 +94,8 @@
- maven-surefire-plugin
- 2.22.2
-
-
- maven-failsafe-plugin
- 2.22.2
+ org.jacoco
+ jacoco-maven-plugin
diff --git a/serving/pom.xml b/serving/pom.xml
index 4cc02dc4510..b13a4ad07b7 100644
--- a/serving/pom.xml
+++ b/serving/pom.xml
@@ -40,6 +40,11 @@
+
+ org.jacoco
+ jacoco-maven-plugin
+
+
org.springframework.boot
spring-boot-maven-plugin
@@ -234,11 +239,9 @@
test
-
org.mockito
mockito-core
- 2.23.0
test