Skip to content

Conversation

@jpobst
Copy link
Contributor

@jpobst jpobst commented May 2, 2023

For test agents that run emulator tests, we currently run xaprepare twice with different scenarios:

  • AndroidTestDependencies
  • EmulatorTestDependencies

As there is some overhead to running xaprepare, we can instead make EmulatorTestDependencies depend on the AndroidTestDependencies scenario. Then we only need to run a single xaprepare invocation.

These steps vary wildly on each run, but averaging 8 runs seems to save over a minute.

main, 2 steps total time PR, 1 step
MSBuild 1 5:50 3:52
MSBuild 2 2:52 2:44
MSBuild 3 3:26 4:32
MSBuild 4 4:18 2:44
MSBuild 5 3:00 2:02
MSBuild 6 6:52 6:05
MSBuild 7 6:41 2:48
MSBuild 8 7:31 4:34
Average 5:03 3:40

@jpobst jpobst force-pushed the xaprepare-emulator branch from a825962 to 296455a Compare May 2, 2023 19:34
@jpobst jpobst force-pushed the xaprepare-emulator branch from 296455a to 233b542 Compare May 2, 2023 20:52
@jpobst jpobst marked this pull request as ready for review May 2, 2023 22:54
@jpobst jpobst merged commit 475b912 into main May 3, 2023
@jpobst jpobst deleted the xaprepare-emulator branch May 3, 2023 16:56
grendello added a commit to grendello/xamarin-android that referenced this pull request May 4, 2023
* main:
  Bump to dotnet/installer@0ce891843a 8.0.100-preview.5.23228.7 (dotnet#7994)
  [ci] Automatically retry failed emulator tests. (dotnet#7997)
  [xaprepare] Combine 'AndroidTestDependencies' and 'EmulatorTestDependencies' scenarios. (dotnet#8006)
  [xaprepare] Provision 'platform-33_r02' (dotnet#8004)
  [Xamarin.Android.Build.Tasks] Add AndroidEnableRestrictToAttributes (dotnet#7990)
  [ci] Remove plots-to-appinsights. (dotnet#8002)
  [Xamarin.Android.Build.Tasks] remove NuGet dependencies (dotnet#8000)
  Bump to 33.0.56 $(AndroidNet7Version) (dotnet#7998)
  $(AndroidPackVersionSuffix)=preview.5; net8 is 34.0.0-preview.5 (dotnet#7996)
@github-actions github-actions bot locked and limited conversation to collaborators Jan 22, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants