Skip to content

Make the FullTest more of a realistic functional test... #628

Make the FullTest more of a realistic functional test...

Make the FullTest more of a realistic functional test... #628

name: Gradle Build and Test
on: [push, pull_request]
jobs:
gradle-build-and-test:
runs-on: ubuntu-latest
steps:
- name: Checkout project sources
uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
java-version: '11'
distribution: 'corretto'
- name: Generate Cache Key from Dockerfiles
id: generate_cache_key
run: |
files=$(find . -type f \( -name 'docker-compose.yml' -o -name 'Dockerfile' \))
file_contents=$(cat $files)
key=$(echo "${file_contents}" | sha1sum | awk '{print $1}')
echo "key=${key}" >> "$GITHUB_OUTPUT"
- name: Cache Docker Images
uses: ScribeMD/docker-cache@0.5.0
with:
key: docker-${{ runner.os }}-${{ steps.generate_cache_key.outputs.key }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
with:
gradle-version: 8.0.2
gradle-home-cache-cleanup: true
- name: Run Gradle Build
run: ./gradlew build -x test --scan --stacktrace
env:
OS_MIGRATIONS_GRADLE_SCAN_TOS_AGREE_AND_ENABLED: ''
- name: Run Tests with Coverage
run: ./gradlew test jacocoTestReport --scan --stacktrace
env:
OS_MIGRATIONS_GRADLE_SCAN_TOS_AGREE_AND_ENABLED: ''
- uses: actions/upload-artifact@v4
if: always()
with:
name: traffic-capture-test-reports
path: |
./TrafficCapture*/*/build/reports/
- uses: actions/upload-artifact@v4
if: always()
with:
name: RFS-test-reports
path: |
./RFS*/*/build/reports/
- name: Upload to Codecov
uses: codecov/codecov-action@v4
with:
files: "**/jacocoTestReport.xml"
flags: unittests
fail_ci_if_error: false