Bump gradle/actions from aa23778d2dc6f6556fcc7164e99babbd8c3134e4 to 4504a95ca57b383b150e5f64cece035031420365 #5956
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: 'Integration Tests - Benchmarks' | |
| on: | |
| schedule: | |
| - cron: '0 0 * * *' # every night at midnight UTC | |
| pull_request: | |
| paths: | |
| - '**/sentry/**' | |
| - '**/sentry-android/**' | |
| - '**/sentry-android-core/**' | |
| - '**/sentry-android-ndk/**' | |
| - '**/sentry-android-integration-tests/**' | |
| - '**/.github/**' | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| name: Benchmarks | |
| runs-on: ubuntu-latest | |
| # we copy the secret to the env variable in order to access it in the workflow | |
| env: | |
| SAUCE_USERNAME: ${{ secrets.SAUCE_USERNAME }} | |
| GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: 'recursive' | |
| - name: 'Set up Java: 17' | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| - name: Setup Gradle | |
| uses: gradle/actions/setup-gradle@4a417b5b1a01db0b076987546b67f8de18e7d340 # pin@v3 | |
| with: | |
| gradle-home-cache-cleanup: true | |
| cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | |
| # Clean, build and release a test apk, but only if we will run the benchmark | |
| - name: Make assembleBenchmarks | |
| if: env.SAUCE_USERNAME != null | |
| run: make assembleBenchmarks | |
| - name: Run All Tests in SauceLab | |
| uses: saucelabs/saucectl-run-action@39e4f0666ca8ecb4b60847213c6e0fbd6a0c2bd8 # pin@v3 | |
| if: github.event_name != 'pull_request' && env.SAUCE_USERNAME != null | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| sauce-username: ${{ secrets.SAUCE_USERNAME }} | |
| sauce-access-key: ${{ secrets.SAUCE_ACCESS_KEY }} | |
| config-file: .sauce/sentry-uitest-android-benchmark.yml | |
| - name: Run one test in SauceLab | |
| uses: saucelabs/saucectl-run-action@39e4f0666ca8ecb4b60847213c6e0fbd6a0c2bd8 # pin@v3 | |
| if: github.event_name == 'pull_request' && env.SAUCE_USERNAME != null | |
| env: | |
| GITHUB_TOKEN: ${{ github.token }} | |
| with: | |
| sauce-username: ${{ secrets.SAUCE_USERNAME }} | |
| sauce-access-key: ${{ secrets.SAUCE_ACCESS_KEY }} | |
| config-file: .sauce/sentry-uitest-android-benchmark-lite.yml | |
| app-metrics: | |
| runs-on: ubuntu-latest | |
| # we copy the secret to the env variable in order to access it in the workflow | |
| env: | |
| SAUCE_USERNAME: ${{ secrets.SAUCE_USERNAME }} | |
| GRADLE_ENCRYPTION_KEY: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | |
| steps: | |
| - name: Git checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| submodules: 'recursive' | |
| - name: 'Set up Java: 17' | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: '17' | |
| - name: Setup Gradle | |
| uses: gradle/actions/setup-gradle@4a417b5b1a01db0b076987546b67f8de18e7d340 # pin@v3 | |
| with: | |
| gradle-home-cache-cleanup: true | |
| cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} | |
| - uses: actions/cache@v4 | |
| id: app-plain-cache | |
| with: | |
| path: sentry-android-integration-tests/test-app-plain/build/outputs/apk/release/test-app-plain-release.apk | |
| key: ${{ github.workflow }}-${{ github.job }}-appplain-${{ hashFiles('sentry-android-integration-tests/test-app-plain/**') }} | |
| - name: Build Android app plain | |
| if: steps.app-plain-cache.outputs['cache-hit'] != 'true' | |
| run: ./gradlew :sentry-android-integration-tests:test-app-plain:assembleRelease | |
| - name: Build Android app with Sentry | |
| run: ./gradlew :sentry-android-integration-tests:test-app-sentry:assembleRelease | |
| - name: Collect app metrics | |
| uses: getsentry/action-app-sdk-overhead-metrics@v1 | |
| with: | |
| config: sentry-android-integration-tests/metrics-test.yml | |
| sauce-user: ${{ secrets.SAUCE_USERNAME }} | |
| sauce-key: ${{ secrets.SAUCE_ACCESS_KEY }} | |
| if: env.SAUCE_USERNAME != null |