0

Fix android-desktop AVD test configs to actually cache their packages

There's some hacky/implied automagic in android emulator swarming tests
whereby the name of the AVD proto file used for the test has to match
the name of the dir under the magic ".android_emulator" dir (which
magically has to be in the root of the src checkout) for swarming to persist it.

If the name doesn't match, then the AVD package will get downloaded
into another dir, and swarming won't know to persist that dir.
This is why of the 1.5+ million android-desktop AVD test tasks,
not a SINGLE one has reused an AVD cache while 90+% of android-mobile test tasks have:
http://screen/FviNipCwt7uwhPk

This should fix that. On repeated tryjobs for this CL, you can
see tests starting to reuse caches and skipping the lengthy cipd
download + extract phase, eg:
https://chromium-swarm.appspot.com/task?id=70ef134465f44810

There's likely a lot of room for de-magic'ifying android emulator
tests and/or enforcing this name matching for all AVD tests. But for
now this will fix the caching issue for android-desktop AVD tests to
stop the bleeding. This will likely lead to a not-insignificant
builder speed-up.

Bug: 402190537
Change-Id: I5de49ef435bf1893510db3e6894c9c5b60d039f3
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6554564
Reviewed-by: Haiyang Pan <hypan@google.com>
Commit-Queue: Ben Pastene <bpastene@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1461099}
This commit is contained in:
Ben Pastene
2025-05-15 17:46:52 -07:00
committed by Chromium LUCI CQ
parent a117ee9951
commit 7efae7fc85
7 changed files with 75 additions and 75 deletions
infra/config
generated
builders
ci
android-desktop-15-x64-fyi-rel
android-desktop-x64-compile-rel
android-desktop-x64-rel-15-tests
try
android-desktop-15-x64-fyi-rel
android-desktop-15-x64-rel
android-desktop-x64-rel
targets

@ -34,13 +34,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -81,13 +81,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@ -135,13 +135,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -182,13 +182,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"

@ -40,13 +40,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -95,13 +95,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -142,13 +142,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@ -189,13 +189,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",

@ -35,13 +35,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -90,13 +90,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -137,13 +137,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@ -184,13 +184,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",

@ -34,13 +34,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -81,13 +81,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@ -135,13 +135,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -182,13 +182,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"

@ -40,13 +40,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -95,13 +95,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -142,13 +142,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@ -189,13 +189,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",

@ -40,13 +40,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -95,13 +95,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
@ -142,13 +142,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
@ -189,13 +189,13 @@
},
"named_caches": [
{
"name": "android_35_google_apis_tablet_x64",
"path": ".android_emulator/android_35_google_apis_tablet_x64"
"name": "android_35_google_apis_tablet_x64_tablet_landscape",
"path": ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape"
}
],
"optional_dimensions": {
"60": {
"caches": "android_35_google_apis_tablet_x64"
"caches": "android_35_google_apis_tablet_x64_tablet_landscape"
}
},
"service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",

@ -282,13 +282,13 @@ targets.mixin(
# soft affinity so that bots with caches will be picked first
optional_dimensions = {
60: {
"caches": "android_35_google_apis_tablet_x64",
"caches": "android_35_google_apis_tablet_x64_tablet_landscape",
},
},
named_caches = [
swarming.cache(
name = "android_35_google_apis_tablet_x64",
path = ".android_emulator/android_35_google_apis_tablet_x64",
name = "android_35_google_apis_tablet_x64_tablet_landscape",
path = ".android_emulator/android_35_google_apis_tablet_x64_tablet_landscape",
),
],
),