diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index da36ec65b..02886b7ac 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -23,14 +23,14 @@ jobs: - name: Install system dependencies run: | sudo apt-get update - # Updated for Ubuntu 24.04: libgl1-mesa-glx is now libgl1 + # Using the verified packages for Ubuntu 24.04 sudo apt-get install -y libpulse0 libvulkan1 mesa-utils libgl1 libglx-mesa0 - name: Build benchmark APKs run: | ./gradlew :app:assembleDemoBenchmark \ :benchmarks:assembleDemoBenchmark \ - -x "generate*OssLicenses" + --stacktrace - name: Run Macrobenchmarks uses: reactivecircus/android-emulator-runner@v2 @@ -45,12 +45,16 @@ jobs: adb wait-for-device echo "Starting screen recording..." + # Using /sdcard/ is standard for screenrecord permissions adb shell screenrecord /sdcard/benchmark.mp4 & echo "Running benchmarks..." + # We add the license exclusion here to prevent the GMS crash during testing ./gradlew :benchmarks:connectedDemoBenchmarkAndroidTest \ + -x :app:generateDemoBenchmarkOssLicenses \ + -x :benchmarks:generateDemoBenchmarkOssLicenses \ -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.suppressErrors=EMULATOR \ - || echo "Benchmarks failed, but we will still try to pull the video." + || echo "Benchmarks finished with errors, pulling data anyway..." echo "Stopping recording..." adb shell pkill -2 screenrecord || true