Code coverage integration (#897)

* Jacoco introduced for full reporting of test coverage.
* All modules included in scope.
* Ability to scope to module OR overall reporting.
* Ability to run in dev environment and bypass as needed w/out GHA.
This commit is contained in:
Jeff Banks
2023-01-12 11:25:40 -06:00
committed by GitHub
parent 3258e4e06a
commit 9c25ad9336
44 changed files with 2525 additions and 199 deletions

View File

@@ -25,17 +25,24 @@ jobs:
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
# - name: mvn-package
# run: mvn package
- name: mvn verify
run: mvn verify
- name: Capture
- name: Installing dependencies
run: mvn clean install -DskipTests=true -Dmaven.javadoc.skip=true -B -V
- name: Uploading [nosqlbench] test coverage
uses: actions/upload-artifact@v3
with:
name: codecov-report
path: codecov-report.tar
- name: Collecting [nosqlbench] logfiles
if: success() || failure()
run: tar -cvf logfiles.tar [a-zA-Z]**/logs/*
- name: Archive Test Results
- name: Uploading test result log files
if: success() || failure()
uses: actions/upload-artifact@v3
with:
@@ -43,9 +50,11 @@ jobs:
path: logfiles.tar
- name: export docs
if: success()
run: nb5/target/nb5 export-docs
- name: upload docs artifact
if: success()
uses: actions/upload-artifact@v3
with:
name: exported-docs

View File

@@ -1,63 +0,0 @@
name: nb-pr-test-cov
on:
push:
branches:
- jeffb/cc-test
# pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
name: checkout nosqlbench
- uses: actions/setup-java@v3
name: setup java
with:
java-version: '17'
java-package: jdk
architecture: x64
distribution: 'temurin'
- name: Cache Maven packages
uses: actions/cache@v1
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-m2
- name: mvn verify
run: mvn verify
- name: Capture
if: success() || failure()
run: tar -cvf logfiles.tar [a-zA-Z]**/logs/*
- name: Archive Test Results
if: success() || failure()
uses: actions/upload-artifact@v3
with:
name: test-results
path: logfiles.tar
- name: Upload to Codecov
uses: codecov/codecov-action@v3
- name: package surefire artifacts
if: failure()
run: |
rm -rf artifacts
mkdir artifacts
find . -type d -name "*surefire*" -exec cp --parents -R {} artifacts/ \;
zip -r artifacts.zip artifacts
- uses: actions/upload-artifact@master
name: upload surefire-artifacts
if: failure()
with:
name: surefire-artifacts
path: artifacts.zip