Feature/before unoptimized #1
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: CI | |
| on: | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| # ── Lint & unit tests ──────────────────────────────────────────────────────── | |
| lint-and-test: | |
| name: Lint & Unit Tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-java@v4 | |
| with: | |
| java-version: 17 | |
| distribution: temurin | |
| - uses: gradle/actions/setup-gradle@v3 | |
| - name: Run lint | |
| run: ./gradlew lint | |
| - name: Run unit tests | |
| run: ./gradlew testDebugUnitTest | |
| - name: Upload lint reports | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: lint-reports | |
| path: '**/build/reports/lint-results-*.html' | |
| if-no-files-found: warn | |
| # ── Macrobenchmark ──────────────────────────────────────────────────────────── | |
| benchmark: | |
| name: Macrobenchmark | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-java@v4 | |
| with: | |
| java-version: 17 | |
| distribution: temurin | |
| - uses: gradle/actions/setup-gradle@v3 | |
| # Required for hardware-accelerated emulator on GitHub-hosted runners. | |
| - name: Enable KVM | |
| run: | | |
| 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 | |
| - name: Run Macrobenchmarks | |
| uses: reactivecircus/android-emulator-runner@v2 | |
| with: | |
| api-level: 34 | |
| target: aosp_atd | |
| arch: x86_64 | |
| script: ./gradlew :benchmarks:connectedBenchmarkAndroidTest | |
| - name: Upload benchmark JSON | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: benchmark-results | |
| path: benchmarks/build/outputs/connected_android_test_additional_output/**/*-benchmarkData.json | |
| if-no-files-found: warn |