Skip to content

Commit

Permalink
Test Generate Baseline profile on CI
Browse files Browse the repository at this point in the history
  • Loading branch information
jarroyoesp committed Oct 3, 2024
1 parent 257a365 commit 6687cd7
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 12 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/generate-baseline-profile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,14 +62,14 @@ jobs:

- name: Generate Baseline Profile
run: |
./gradlew :macrobenchmark:forlago:pixel2Api31googleBenchmarkAndroidTest \
./gradlew :macrobenchmark:forlago:pixel6Api31BenchmarkAndroidTest \
-Pandroid.testInstrumentationRunnerArguments.androidx.benchmark.enabledRules=baselineprofile \
-Pandroid.experimental.testOptions.managedDevices.emulator.showKernelLogging=true \
-Pandroid.testoptions.manageddevices.emulator.gpu="swiftshader_indirect" \
--no-configuration-cache
- name: Move & Rename Baseline Profile
run: mv -f macrobenchmark/forlago/build/outputs/managed_device_android_test_additional_output/benchmark/pixel2Api31google/BaselineProfileGenerator_generate-baseline-prof.txt apps/forlago/src/main/baselineProfiles/baseline-prof.txt
run: mv -f macrobenchmark/forlago/build/outputs/managed_device_android_test_additional_output/benchmark/pixel6Api31/BaselineProfileGenerator_generate-baseline-prof.txt apps/forlago/src/main/baselineProfiles/baseline-prof.txt

- name: Upload build outputs
uses: actions/upload-artifact@v3
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ fun CommonExtension<*, *, *, *, *, *>.configureGradleManagedDevices(
managedDevices {
devices {
allDevices.forEach { deviceConfig ->
create<ManagedVirtualDevice>(deviceConfig.deviceName).apply {
create<ManagedVirtualDevice>(deviceConfig.deviceName) {
this.device = deviceConfig.device
apiLevel = deviceConfig.apiLevel
this.systemImageSource = deviceConfig.systemImageSource
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ android {
"-opt-in=androidx.compose.ui.test.ExperimentalTestApi",
)
}
configureGradleManagedDevices(minApiLevel = config.android.minSdk.get(), maxApiLevel = config.android.targetSdk.get())
// configureGradleManagedDevices(minApiLevel = config.android.minSdk.get(), maxApiLevel = config.android.targetSdk.get())
}

easylauncher {
Expand Down
6 changes: 3 additions & 3 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ aboutlibraries = "11.2.2"
accompanist = "0.35.1-alpha"
androidx-compose = "1.7.1"
androidx-compose-compiler = "1.5.15"
androidx-benchmark="1.3.1"
androidx-benchmark="1.3.2"
androidx-datastore = "1.1.1"
androidx-lifecycle = "2.8.5"
androidx-navigation = "2.8.0"
Expand Down Expand Up @@ -80,7 +80,7 @@ androidx-navigation-fragment = { module = "androidx.navigation:navigation-fragme
androidx-navigation-ui-ktx = { module = "androidx.navigation:navigation-ui-ktx", version.ref = "androidx-navigation" }
androidx-paging = "androidx.paging:paging-compose:3.3.2"
androidx-palette = "androidx.palette:palette:1.0.0"
androidx-profileinstaller = "androidx.profileinstaller:profileinstaller:1.3.1"
androidx-profileinstaller = "androidx.profileinstaller:profileinstaller:1.4.1"
androidx-room-compiler = { module = "androidx.room:room-compiler", version.ref = "androidx-room" }
androidx-room-ktx = { module = "androidx.room:room-ktx", version.ref = "androidx-room" }
androidx-room-runtime = { module = "androidx.room:room-runtime", version.ref = "androidx-room" }
Expand Down Expand Up @@ -166,7 +166,7 @@ zoomable = "net.engawapg.lib:zoomable:1.6.1"

# plugins
plugin-aboutlibraries = { module = "com.mikepenz.aboutlibraries.plugin:aboutlibraries-plugin", version.ref = "aboutlibraries" }
plugin-android-gradle = "com.android.tools.build:gradle:8.6.0"
plugin-android-gradle = "com.android.tools.build:gradle:8.6.1"
plugin-androidcachefix = "gradle.plugin.org.gradle.android:android-cache-fix-gradle-plugin:3.0"
plugin-androidx-navigation-safeargs = { module = "androidx.navigation:navigation-safe-args-gradle-plugin", version.ref = "androidx-navigation" }
plugin-apollo = { module = "com.apollographql.apollo:apollo-gradle-plugin", version.ref = "apollo" }
Expand Down
21 changes: 16 additions & 5 deletions macrobenchmark/forlago/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

@file:Suppress("UnstableApiUsage")

import com.android.build.api.dsl.ManagedVirtualDevice
import com.leinardi.forlago.ext.configureGradleManagedDevice
import com.leinardi.forlago.model.DeviceConfig

Expand All @@ -26,9 +27,9 @@ plugins {
}

val deviceConfig = DeviceConfig(
device = "Pixel 2",
device = "Pixel 6",
apiLevel = 31,
systemImageSource = "google",
systemImageSource = "aosp",
)

android {
Expand All @@ -39,8 +40,18 @@ android {
testInstrumentationRunnerArguments["androidx.benchmark.suppressErrors"] = "EMULATOR"
}


configureGradleManagedDevice(deviceConfig)
testOptions {
managedDevices {
devices {
create<ManagedVirtualDevice>("pixel6Api31") {
device = "Pixel 6"
apiLevel = 31
systemImageSource = "aosp"
}
}
}
}
//configureGradleManagedDevice(deviceConfig)

targetProjectPath = ":apps:forlago"
experimentalProperties["android.experimental.self-instrumenting"] = true
Expand All @@ -61,7 +72,7 @@ android {
baselineProfile {
// This specifies the managed devices to use that you run the tests on.
managedDevices.clear()
managedDevices += deviceConfig.deviceName
managedDevices += "pixel6Api31"//deviceConfig.deviceName

// Don't use a connected device but rely on a GMD for consistency between local and CI builds.
useConnectedDevices = false
Expand Down

0 comments on commit 6687cd7

Please sign in to comment.