From 0f509243319dd9f9ebec67f6cc241b7cca03e745 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 23 Mar 2026 04:12:10 +0200 Subject: [PATCH 01/13] ci: upgrade to api-level 34 --- .github/workflows/Build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index 31b274d7f2..5554dccf58 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -5,9 +5,9 @@ on: jobs: benchmark-android: - uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@main + uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@v2 with: - api-level: 31 + api-level: 34 target: google_apis arch: x86_64 force-avd-creation: true From a1bc3390bd05102125e7f7993461e46bca009acf Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Wed, 25 Mar 2026 16:05:20 +0200 Subject: [PATCH 02/13] ci: commenty worky? --- .github/workflows/Build.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index 5554dccf58..4cc17042a5 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -1,6 +1,8 @@ name: Benchmark on Emulator on: + pull_request: + types: [opened, synchronize, reopened] workflow_dispatch: jobs: From 2a50f78c6131fca61555d8d9ad917243f00c9ead Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Wed, 25 Mar 2026 17:33:06 +0200 Subject: [PATCH 03/13] ci: allow pull-request write --- .github/workflows/Build.yaml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index 4cc17042a5..6b533d66b8 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -8,6 +8,9 @@ on: jobs: benchmark-android: uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@v2 + permissions: + pull-requests: write + contents: read with: api-level: 34 target: google_apis From ad679f8563597957a054a306d846169979534231 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 13 Apr 2026 10:39:53 +0200 Subject: [PATCH 04/13] ci: test mulit device, and report generation --- .github/workflows/Build-Multi-Device.yaml | 41 +++++++++++++++++++++++ .github/workflows/Build.yaml | 4 +-- 2 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/Build-Multi-Device.yaml diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/Build-Multi-Device.yaml new file mode 100644 index 0000000000..03744d401f --- /dev/null +++ b/.github/workflows/Build-Multi-Device.yaml @@ -0,0 +1,41 @@ +name: Benchmark on Emulator + +on: + pull_request: + types: [opened, synchronize, reopened] + workflow_dispatch: + +jobs: + benchmark-android: + uses: Frozen-Bytes/workflows/android-macrobenchmark-gradle.yml@v3 + strategy: + fail-fast: false + matrix: + include: + - name: "pixel" + profile: "pixel" + - name: "Nexus_6" + profile: "Nexus 6" + - name: "Nexus_4" + profile: "Nexus 4" + name: ${{ matrix.name }} + with: + api-level: 34 + target: google_apis + arch: x86_64 + profile: "${{ matrix.profile }}" + gradle-cache-readonly: false + instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" + artifact-path: "benhcomp-${{ matrix.name }}" + artifact-macrobenchmark-name: "${{ matrix.name }}-raw-macrobenchmark" + + publish-report: + runs-on: ubuntu-latest + needs: benchmark-android + uses: Frozen-Bytes/actions/generate-markdown-repeort@v3 + permissions: + pull-requests: write + contents: read + with: + artifact-prefix: "benchcomp-" + comment-on-pr: ${{ github.event_name == 'pull_request' && 'true' || 'false' }} diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index 6b533d66b8..ce06e23d7e 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -7,7 +7,7 @@ on: jobs: benchmark-android: - uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@v2 + uses: Frozen-Bytes/actions/workflows/android-macrobenchmark-gradle.yml@v3 permissions: pull-requests: write contents: read @@ -15,8 +15,6 @@ jobs: api-level: 34 target: google_apis arch: x86_64 - force-avd-creation: true emulator-options: -no-snapshot -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -memory 4096 - disable-animations: true gradle-cache-readonly: false instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" From 9eccecbb42b70f6998ebe082f47f055a63ef8959 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 13 Apr 2026 10:42:11 +0200 Subject: [PATCH 05/13] bench: set iterations to 2 --- .../apps/nowinandroid/foryou/ScrollForYouFeedBenchmark.kt | 4 ++-- .../apps/nowinandroid/interests/ScrollTopicListBenchmark.kt | 2 +- .../interests/TopicsScreenRecompositionBenchmark.kt | 2 +- .../samples/apps/nowinandroid/startup/StartupBenchmark.kt | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/foryou/ScrollForYouFeedBenchmark.kt b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/foryou/ScrollForYouFeedBenchmark.kt index e899829a66..c528816007 100644 --- a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/foryou/ScrollForYouFeedBenchmark.kt +++ b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/foryou/ScrollForYouFeedBenchmark.kt @@ -47,7 +47,7 @@ class ScrollForYouFeedBenchmark { packageName = PACKAGE_NAME, metrics = listOf(FrameTimingMetric()), compilationMode = compilationMode, - iterations = 5, + iterations = 2, startupMode = StartupMode.WARM, setupBlock = { // Start the app @@ -68,7 +68,7 @@ class ScrollForYouFeedBenchmark { packageName = PACKAGE_NAME, metrics = listOf(MemoryUsageMetric(MemoryUsageMetric.Mode.Max)), compilationMode = compilationMode, - iterations = 5, + iterations = 2, startupMode = StartupMode.WARM, setupBlock = { // Start the app diff --git a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/ScrollTopicListBenchmark.kt b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/ScrollTopicListBenchmark.kt index 4be72783ba..f2c29f6d6e 100644 --- a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/ScrollTopicListBenchmark.kt +++ b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/ScrollTopicListBenchmark.kt @@ -42,7 +42,7 @@ class ScrollTopicListBenchmark { packageName = PACKAGE_NAME, metrics = listOf(FrameTimingMetric()), compilationMode = compilationMode, - iterations = 5, + iterations = 2, startupMode = StartupMode.WARM, setupBlock = { // Start the app diff --git a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/TopicsScreenRecompositionBenchmark.kt b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/TopicsScreenRecompositionBenchmark.kt index 43b2ecec1c..aea22bb2b5 100644 --- a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/TopicsScreenRecompositionBenchmark.kt +++ b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/interests/TopicsScreenRecompositionBenchmark.kt @@ -42,7 +42,7 @@ class TopicsScreenRecompositionBenchmark { packageName = PACKAGE_NAME, metrics = listOf(FrameTimingMetric()), compilationMode = compilationMode, - iterations = 5, + iterations = 2, startupMode = StartupMode.WARM, setupBlock = { // Start the app diff --git a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/startup/StartupBenchmark.kt b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/startup/StartupBenchmark.kt index c979beeba0..73e9d745a3 100644 --- a/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/startup/StartupBenchmark.kt +++ b/benchmarks/src/main/kotlin/com/google/samples/apps/nowinandroid/startup/StartupBenchmark.kt @@ -61,7 +61,7 @@ class StartupBenchmark { metrics = BaselineProfileMetrics.allMetrics, compilationMode = compilationMode, // More iterations result in higher statistical significance. - iterations = 5, + iterations = 2, startupMode = COLD, setupBlock = { pressHome() From e28afc62d9e0bcdb7174047a46fc39ee0ccf79f0 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 13 Apr 2026 10:43:07 +0200 Subject: [PATCH 06/13] ci: focus on this branch only --- .github/workflows/Build-Multi-Device.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/Build-Multi-Device.yaml index 03744d401f..6be8e53891 100644 --- a/.github/workflows/Build-Multi-Device.yaml +++ b/.github/workflows/Build-Multi-Device.yaml @@ -25,6 +25,8 @@ jobs: arch: x86_64 profile: "${{ matrix.profile }}" gradle-cache-readonly: false + baseline-benchmark: "gh-action-dev" + candidate-benchmark: "gh-action-dev" instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" artifact-path: "benhcomp-${{ matrix.name }}" artifact-macrobenchmark-name: "${{ matrix.name }}-raw-macrobenchmark" From 4c8cef86709e36656cfe031dc18bfe7a30571871 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 13 Apr 2026 10:44:54 +0200 Subject: [PATCH 07/13] fix: ci incorrect path --- .github/workflows/Build-Multi-Device.yaml | 21 ++++++++++++--------- .github/workflows/Build.yaml | 6 +++--- 2 files changed, 15 insertions(+), 12 deletions(-) diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/Build-Multi-Device.yaml index 6be8e53891..33882e4f49 100644 --- a/.github/workflows/Build-Multi-Device.yaml +++ b/.github/workflows/Build-Multi-Device.yaml @@ -1,4 +1,4 @@ -name: Benchmark on Emulator +name: Benchmark on Emulator Multi-Device on: pull_request: @@ -7,7 +7,7 @@ on: jobs: benchmark-android: - uses: Frozen-Bytes/workflows/android-macrobenchmark-gradle.yml@v3 + uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@v3 strategy: fail-fast: false matrix: @@ -25,19 +25,22 @@ jobs: arch: x86_64 profile: "${{ matrix.profile }}" gradle-cache-readonly: false - baseline-benchmark: "gh-action-dev" - candidate-benchmark: "gh-action-dev" + baseline-branch: "gh-action-dev" + candidate-branch: "gh-action-dev" instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" - artifact-path: "benhcomp-${{ matrix.name }}" + artifact-name: "benhcomp-${{ matrix.name }}.json" artifact-macrobenchmark-name: "${{ matrix.name }}-raw-macrobenchmark" publish-report: runs-on: ubuntu-latest needs: benchmark-android - uses: Frozen-Bytes/actions/generate-markdown-repeort@v3 permissions: pull-requests: write contents: read - with: - artifact-prefix: "benchcomp-" - comment-on-pr: ${{ github.event_name == 'pull_request' && 'true' || 'false' }} + + steps: + - name: Publish Report + uses: Frozen-Bytes/actions/publish-report@v3 + with: + artifact-prefix: "benchcomp-" + comment-on-pr: ${{ github.event_name == 'pull_request' && 'true' || 'false' }} diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml index ce06e23d7e..8276ae128d 100644 --- a/.github/workflows/Build.yaml +++ b/.github/workflows/Build.yaml @@ -1,13 +1,13 @@ name: Benchmark on Emulator on: - pull_request: - types: [opened, synchronize, reopened] + # pull_request: + # types: [opened, synchronize, reopened] workflow_dispatch: jobs: benchmark-android: - uses: Frozen-Bytes/actions/workflows/android-macrobenchmark-gradle.yml@v3 + uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@v3 permissions: pull-requests: write contents: read From e63b402765104bca3ed891ad1a5bc53fc29814b1 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 13 Apr 2026 15:02:06 +0200 Subject: [PATCH 08/13] feat: add device alias --- .github/workflows/Build-Multi-Device.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/Build-Multi-Device.yaml index 33882e4f49..13643237ad 100644 --- a/.github/workflows/Build-Multi-Device.yaml +++ b/.github/workflows/Build-Multi-Device.yaml @@ -12,7 +12,7 @@ jobs: fail-fast: false matrix: include: - - name: "pixel" + - name: "Pixel" profile: "pixel" - name: "Nexus_6" profile: "Nexus 6" @@ -30,6 +30,7 @@ jobs: instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" artifact-name: "benhcomp-${{ matrix.name }}.json" artifact-macrobenchmark-name: "${{ matrix.name }}-raw-macrobenchmark" + device-alias: "${{ matrix.name }}" publish-report: runs-on: ubuntu-latest From c4ad1679be330e3635b373a0f8076e1744124336 Mon Sep 17 00:00:00 2001 From: Tony Medhat Date: Mon, 13 Apr 2026 19:05:27 +0200 Subject: [PATCH 09/13] ci: comment on PRs using bot token --- .github/workflows/Build-Multi-Device.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/Build-Multi-Device.yaml index 13643237ad..a7abd9e333 100644 --- a/.github/workflows/Build-Multi-Device.yaml +++ b/.github/workflows/Build-Multi-Device.yaml @@ -40,8 +40,16 @@ jobs: contents: read steps: + - name: Create Bot Token + id: app-token + uses: actions/create-github-app-token@v3 + with: + client-id: ${{ vars.GH_APP_CLIENT_ID }} + private-key: ${{ secrets.GH_APP_PRIVATE_KEY }} + - name: Publish Report uses: Frozen-Bytes/actions/publish-report@v3 with: + github-token: ${{ steps.app-token.outputs.token }} artifact-prefix: "benchcomp-" comment-on-pr: ${{ github.event_name == 'pull_request' && 'true' || 'false' }} From 67f8026e368483ec101dd4a7117392ab22b01f03 Mon Sep 17 00:00:00 2001 From: Amany ElSayed <128927527+CodingPanda166@users.noreply.github.com> Date: Thu, 16 Apr 2026 00:20:12 +0200 Subject: [PATCH 10/13] Remove Nexus 4 from build matrix and update artifact name --- .github/workflows/Build-Multi-Device.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/Build-Multi-Device.yaml index a7abd9e333..4be305cbb4 100644 --- a/.github/workflows/Build-Multi-Device.yaml +++ b/.github/workflows/Build-Multi-Device.yaml @@ -16,8 +16,6 @@ jobs: profile: "pixel" - name: "Nexus_6" profile: "Nexus 6" - - name: "Nexus_4" - profile: "Nexus 4" name: ${{ matrix.name }} with: api-level: 34 @@ -28,7 +26,7 @@ jobs: baseline-branch: "gh-action-dev" candidate-branch: "gh-action-dev" instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" - artifact-name: "benhcomp-${{ matrix.name }}.json" + artifact-name: "benchcomp-${{ matrix.name }}.json" artifact-macrobenchmark-name: "${{ matrix.name }}-raw-macrobenchmark" device-alias: "${{ matrix.name }}" From 84c434c8e5c4122e67ff4836b205246a0b014a5f Mon Sep 17 00:00:00 2001 From: Amany ElSayed <128927527+CodingPanda166@users.noreply.github.com> Date: Thu, 16 Apr 2026 00:55:10 +0200 Subject: [PATCH 11/13] Update performance-check.yaml for branch and args --- .../{Build-Multi-Device.yaml => performance-check.yaml} | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) rename .github/workflows/{Build-Multi-Device.yaml => performance-check.yaml} (87%) diff --git a/.github/workflows/Build-Multi-Device.yaml b/.github/workflows/performance-check.yaml similarity index 87% rename from .github/workflows/Build-Multi-Device.yaml rename to .github/workflows/performance-check.yaml index 4be305cbb4..f50e9c04e8 100644 --- a/.github/workflows/Build-Multi-Device.yaml +++ b/.github/workflows/performance-check.yaml @@ -23,9 +23,9 @@ jobs: arch: x86_64 profile: "${{ matrix.profile }}" gradle-cache-readonly: false - baseline-branch: "gh-action-dev" - candidate-branch: "gh-action-dev" - instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" + baseline-branch: "main" + candidate-branch: "${{ github.head_ref }}" + instrument-args: "-e package com.google.samples.apps.nowinandroid.Generator" artifact-name: "benchcomp-${{ matrix.name }}.json" artifact-macrobenchmark-name: "${{ matrix.name }}-raw-macrobenchmark" device-alias: "${{ matrix.name }}" From 360dce952168c53a007598aa4cc630b05ec4cc78 Mon Sep 17 00:00:00 2001 From: Ahmed Khaled Date: Thu, 16 Apr 2026 02:43:04 +0200 Subject: [PATCH 12/13] chore: delete unused workflows --- .github/workflows/Build.yaml | 20 ----- .../workflows/NightlyBaselineProfiles.yaml | 66 --------------- .github/workflows/Release.yml | 82 ------------------- 3 files changed, 168 deletions(-) delete mode 100644 .github/workflows/Build.yaml delete mode 100644 .github/workflows/NightlyBaselineProfiles.yaml delete mode 100644 .github/workflows/Release.yml diff --git a/.github/workflows/Build.yaml b/.github/workflows/Build.yaml deleted file mode 100644 index 8276ae128d..0000000000 --- a/.github/workflows/Build.yaml +++ /dev/null @@ -1,20 +0,0 @@ -name: Benchmark on Emulator - -on: - # pull_request: - # types: [opened, synchronize, reopened] - workflow_dispatch: - -jobs: - benchmark-android: - uses: Frozen-Bytes/actions/.github/workflows/android-macrobenchmark-gradle.yml@v3 - permissions: - pull-requests: write - contents: read - with: - api-level: 34 - target: google_apis - arch: x86_64 - emulator-options: -no-snapshot -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -memory 4096 - gradle-cache-readonly: false - instrument-args: "-e class com.google.samples.apps.nowinandroid.startup.StartupBenchmark#startupPrecompiledWithBaselineProfile" diff --git a/.github/workflows/NightlyBaselineProfiles.yaml b/.github/workflows/NightlyBaselineProfiles.yaml deleted file mode 100644 index 120833b248..0000000000 --- a/.github/workflows/NightlyBaselineProfiles.yaml +++ /dev/null @@ -1,66 +0,0 @@ -name: NightlyBaselineProfiles - -on: - workflow_dispatch: - # schedule: - # - cron: '42 4 * * *' - -jobs: - baseline_profiles: - name: "Generate Baseline Profiles" - if: github.repository == 'android/nowinandroid' - runs-on: ubuntu-latest - - permissions: - contents: write - - timeout-minutes: 60 - - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Enable KVM group perms - 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 - ls /dev/kvm - - - name: Copy CI gradle.properties - run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - - - name: Set up JDK 17 - uses: actions/setup-java@v5 - with: - distribution: 'zulu' - java-version: 17 - - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 - with: - cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} - build-scan-publish: true - build-scan-terms-of-use-url: "https://gradle.com/terms-of-service" - build-scan-terms-of-use-agree: "yes" - - - name: Setup Android SDK - uses: android-actions/setup-android@v3 - - - name: Accept licenses - run: yes | sdkmanager --licenses || true - - - name: Check build-logic - run: ./gradlew :build-logic:convention:check - - - name: Setup GMD - run: ./gradlew :benchmarks:pixel6Api33Setup - --info - -Pandroid.experimental.testOptions.managedDevices.emulator.showKernelLogging=true - -Pandroid.testoptions.manageddevices.emulator.gpu="swiftshader_indirect" - - - name: Build all build type and flavor permutations including baseline profiles - run: ./gradlew :app:assemble - -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=baselineprofile - -Pandroid.testoptions.manageddevices.emulator.gpu="swiftshader_indirect" - -Pandroid.experimental.testOptions.managedDevices.emulator.showKernelLogging=true diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml deleted file mode 100644 index e890bb5a70..0000000000 --- a/.github/workflows/Release.yml +++ /dev/null @@ -1,82 +0,0 @@ -name: GitHub Release with APKs - -on: - workflow_dispatch: - push: - tags: - - 'v*' - -jobs: - build: - if: github.repository == 'android/nowinandroid' - runs-on: ubuntu-latest - timeout-minutes: 120 - - steps: - - name: Enable KVM group perms - 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 - ls /dev/kvm - - - name: Checkout - - uses: actions/checkout@v4 - - - name: Copy CI gradle.properties - run: mkdir -p ~/.gradle ; cp .github/ci-gradle.properties ~/.gradle/gradle.properties - - - name: Set up JDK 17 - uses: actions/setup-java@v5 - with: - distribution: 'zulu' - java-version: 17 - - - name: Setup Gradle - uses: gradle/actions/setup-gradle@v4 - with: - cache-encryption-key: ${{ secrets.GRADLE_ENCRYPTION_KEY }} - build-scan-publish: true - build-scan-terms-of-use-url: "https://gradle.com/terms-of-service" - build-scan-terms-of-use-agree: "yes" - - - name: Setup Android SDK - uses: android-actions/setup-android@v3 - - - name: Accept licenses - run: yes | sdkmanager --licenses || true - - - name: Setup GMD - run: ./gradlew :benchmarks:pixel6Api33Setup - --info - -Pandroid.experimental.testOptions.managedDevices.emulator.showKernelLogging=true - -Pandroid.testoptions.manageddevices.emulator.gpu="swiftshader_indirect" - - - name: Build release variant including baseline profile generation - run: ./gradlew :app:assembleDemoRelease - -Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=BaselineProfile - -Pandroid.testoptions.manageddevices.emulator.gpu="swiftshader_indirect" - -Pandroid.experimental.testOptions.managedDevices.emulator.showKernelLogging=true - -Pandroid.experimental.androidTest.numManagedDeviceShards=1 - -Pandroid.experimental.testOptions.managedDevices.maxConcurrentDevices=1 - - name: Create Release - id: create_release - uses: actions/create-release@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - tag_name: ${{ github.ref }} - release_name: ${{ github.ref }} - draft: true - prerelease: false - - - name: Upload app - uses: actions/upload-release-asset@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - upload_url: ${{ steps.create_release.outputs.upload_url }} - asset_path: app/build/outputs/apk/demo/release/app-demo-release.apk - asset_name: app-demo-release.apk - asset_content_type: application/vnd.android.package-archive From 48d1be9e68eb6c9fdeafade012cefa19277837a0 Mon Sep 17 00:00:00 2001 From: Ahmed Khaled Date: Thu, 16 Apr 2026 02:44:52 +0200 Subject: [PATCH 13/13] style: improve performance monitoring workflow name --- .github/workflows/performance-check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/performance-check.yaml b/.github/workflows/performance-check.yaml index f50e9c04e8..3b4ce7cf37 100644 --- a/.github/workflows/performance-check.yaml +++ b/.github/workflows/performance-check.yaml @@ -1,4 +1,4 @@ -name: Benchmark on Emulator Multi-Device +name: Performance Check on: pull_request: