Skip to content

test(spring): [Sample Tests 27] Move the Spring jakarta WAR sample's tests into the module #6443

test(spring): [Sample Tests 27] Move the Spring jakarta WAR sample's tests into the module

test(spring): [Sample Tests 27] Move the Spring jakarta WAR sample's tests into the module #6443

name: Spring Boot 3.x Matrix
on:
push:
branches:
- main
pull_request:
paths-ignore:
- '*android*/**'
- 'sentry-compose/**'
- 'sentry-samples/sentry-samples-android/**'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
spring-boot-3-matrix:
timeout-minutes: 45
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
springboot-version: [ '3.2.12', '3.3.13', '3.4.13', '3.5.13' ]
name: Spring Boot ${{ matrix.springboot-version }}
env:
GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
steps:
- name: Checkout Repo
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
submodules: 'recursive'
- name: Set up Java
uses: actions/setup-java@b843ebf9b913146b38da2eaa7aeddf76074ae1ad # v6.1.0
with:
distribution: 'temurin'
java-version: '21'
# Workaround for https://github.com/gradle/actions/issues/21 to use config cache
- name: Cache buildSrc
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
path: buildSrc/build
key: build-logic-${{ hashFiles('buildSrc/src/**', 'buildSrc/build.gradle.kts','buildSrc/settings.gradle.kts') }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@3f5f9adaf7d9fecd50b5935e54106014257a94e6 # v6.4.0
with:
cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }}
- name: Update Spring Boot 3.x version
run: |
springboot_version="${{ matrix.springboot-version }}"
perl -0pi -e 'BEGIN { $v = shift } s/^springboot3[[:space:]]*=[[:space:]]*"\K[^"]*/$v/m or die "::error::springboot3 version entry not found in gradle/libs.versions.toml\n"' "$springboot_version" gradle/libs.versions.toml
echo "Updated Spring Boot 3.x version to $springboot_version"
- name: Test integration suites
run: |
./gradlew \
:sentry-spring-jakarta:integrationTest \
:sentry-spring-boot-jakarta:integrationTest \
:sentry-spring-boot-jakarta:integrationTestWebflux \
:sentry-spring-boot-jakarta:integrationTestOtelNoAgent \
:sentry-spring-boot-jakarta:integrationTestLog4j2 \
:sentry-spring-boot-jakarta:integrationTestOtelAgent \
:sentry-spring-boot-jakarta:integrationTestOtelAgentWithoutAutoInit
- name: Upload test results
if: always()
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
with:
name: test-results-springboot-3-${{ matrix.springboot-version }}
path: |
**/build/reports/*
**/build/test-results/**/*.xml
- name: Test Report
uses: phoenix-actions/test-reporting@7317eea6e13c47348dd0bb318669485157c518d6 # pin@v16
if: always()
with:
name: JUnit Spring Boot 3.x ${{ matrix.springboot-version }}
path: |
**/build/test-results/**/*.xml
reporter: java-junit
output-to: step-summary
fail-on-error: false