Skip to content

Startup Profiling 2 - Add options and sampling logic #2092

Startup Profiling 2 - Add options and sampling logic

Startup Profiling 2 - Add options and sampling logic #2092

Workflow file for this run

name: AGP Matrix Compatibility
on:
push:
branches:
- main
- release/**
pull_request:
jobs:
cancel-previous-workflow:
runs-on: ubuntu-latest
steps:
- name: Cancel Previous Runs
uses: styfle/cancel-workflow-action@01ce38bf961b4e243a6342cbade0dbc8ba3f0432 # pin@0.12.0
with:
access_token: ${{ github.token }}
agp-matrix-compatibility:
timeout-minutes: 30
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
agp: [ '8.0.0','8.1.0-alpha11' ]
integrations: [ true, false ]
name: AGP Matrix Release - AGP ${{ matrix.agp }} - Integrations ${{ matrix.integrations }}
env:
VERSION_AGP: ${{ matrix.agp }}
APPLY_SENTRY_INTEGRATIONS: ${{ matrix.integrations }}
steps:
- name: Checkout Repo
uses: actions/checkout@v4
- name: Setup Gradle
uses: gradle/gradle-build-action@982da8e78c05368c70dac0351bb82647a9e9a5d2 # pin@v2
- name: Setup Java Version
uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
- name: Setup KVM
shell: bash
run: |
# check if virtualization is supported...
sudo apt install -y --no-install-recommends cpu-checker coreutils && echo "CPUs=$(nproc --all)" && kvm-ok
# allow access to KVM to run the emulator
echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' \
| sudo tee /etc/udev/rules.d/99-kvm4all.rules
sudo udevadm control --reload-rules
sudo udevadm trigger --name-match=kvm
# Clean, build and release a test apk
- name: Make assembleUiTests
run: make assembleUiTests
# We stop gradle at the end to make sure the cache folders
# don't contain any lock files and are free to be cached.
- name: Make stop
run: make stop
# We tried to use the cache action to cache gradle stuff, but it made tests slower and timeout
- name: Run instrumentation tests
uses: reactivecircus/android-emulator-runner@99a4aac18b4df9b3af66c4a1f04c1f23fa10c270 # pin@v2
with:
api-level: 30
force-avd-creation: false
emulator-options: -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
disable-animations: true
disable-spellchecker: true
target: 'aosp_atd'
channel: canary # Necessary for ATDs
script: ./gradlew sentry-android-integration-tests:sentry-uitest-android:connectedReleaseAndroidTest -DtestBuildType=release --daemon
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-AGP${{ matrix.agp }}-Integrations${{ matrix.integrations }}
path: |
**/build/reports/*
**/build/outputs/*/connected/*
**/build/outputs/mapping/release/*