Skip to content

[SR] Capture breadcrumbs (temporary) #666

[SR] Capture breadcrumbs (temporary)

[SR] Capture breadcrumbs (temporary) #666

name: 'System Tests Backend'
on:
push:
branches:
- main
pull_request:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
system-test:
runs-on: ubuntu-latest
continue-on-error: true
env:
SENTRY_URL: http://127.0.0.1:8000
strategy:
fail-fast: false
matrix:
sample: [ "sentry-samples-spring-boot-jakarta" ]
include:
- sample: "sentry-samples-spring-boot"
- sample: "sentry-samples-spring-boot-webflux-jakarta"
- sample: "sentry-samples-spring-boot-webflux"
steps:
- uses: actions/checkout@v4
with:
submodules: 'recursive'
- uses: actions/setup-python@v5
with:
python-version: '3.10.5'
- name: Set up Java
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup Gradle
uses: gradle/actions/setup-gradle@579fbbe7221704325eb4c4d4bf20c2b0859fba76 # pin@v3
with:
gradle-home-cache-cleanup: true
- name: Exclude android modules from build
run: |
sed -i -e '/.*"sentry-android-ndk",/d' -e '/.*"sentry-android",/d' -e '/.*"sentry-compose",/d' -e '/.*"sentry-android-core",/d' -e '/.*"sentry-android-fragment",/d' -e '/.*"sentry-android-navigation",/d' -e '/.*"sentry-android-okhttp",/d' -e '/.*"sentry-android-sqlite",/d' -e '/.*"sentry-android-timber",/d' -e '/.*"sentry-android-integration-tests:sentry-uitest-android-benchmark",/d' -e '/.*"sentry-android-integration-tests:sentry-uitest-android",/d' -e '/.*"sentry-android-integration-tests:test-app-sentry",/d' -e '/.*"sentry-samples:sentry-samples-android",/d' settings.gradle.kts
- name: Exclude android modules from ignore list
run: |
sed -i -e '/.*"sentry-uitest-android",/d' -e '/.*"sentry-uitest-android-benchmark",/d' -e '/.*"test-app-sentry",/d' -e '/.*"sentry-samples-android",/d' build.gradle.kts
- name: Build server jar
run: |
./gradlew :sentry-samples:${{ matrix.sample }}:bootJar
- name: Start server and run integration test for sentry-cli commands
run: |
test/system-test-sentry-server-start.sh > sentry-mock-server.txt 2>&1 & test/system-test-spring-server-start.sh "${{ matrix.sample }}" > spring-server.txt 2>&1 & test/wait-for-spring.sh && ./gradlew :sentry-samples:${{ matrix.sample }}:systemTest
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-${{ matrix.sample }}-system-test
path: |
**/build/reports/*
sentry-mock-server.txt
spring-server.txt
- name: Test Report
uses: phoenix-actions/test-reporting@41efe7ebebe7ef156ef46f6b0acf50ec0f10315b # pin@v12
if: always()
with:
name: JUnit System Tests ${{ matrix.sample }}
path: |
**/build/test-results/**/*.xml
reporter: java-junit
output-to: step-summary
fail-on-error: false