Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[build] skip provisioning of Xamarin.Android on .NET lanes #7646

Merged
merged 1 commit into from
Jan 3, 2023

Conversation

jonathanpeppers
Copy link
Member

Context: https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=7102687&view=logs&j=270ba80a-9de5-5c73-abb9-bb787532a07c&s=25cdcba1-3ecb-5490-0002-daf27c697525&t=306f7057-edf0-58b5-5004-8b3b311950d4&l=449

provisionator is a source of random failures like:

[21:41:23 ERR] Error Xamarin.Provisioning.ProvisioningException: Failed to provision C:\a\_work\1\s\xamarin-android\Xamarin.Android.Sdk-13.1.99.88.vsix

In this case, we were downloading a classic Xamarin.Android build for use on a test lane for One .NET tests?

To make things better, let's skip this step completely for One .NET tests. We shouldn't need to provision classic Xamarin.Android on these test lanes.

This also has the added benefit of faster test runs, just spot-checking the time spent on the above build:

  • Saves 1-2 min of time for provisionator on macOS lanes.
  • Saves up to ~24 min of time for provisionator on Windows lanes.

Context: https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=7102687&view=logs&j=270ba80a-9de5-5c73-abb9-bb787532a07c&s=25cdcba1-3ecb-5490-0002-daf27c697525&t=306f7057-edf0-58b5-5004-8b3b311950d4&l=449

`provisionator` is a source of random failures like:

    [21:41:23 ERR] Error Xamarin.Provisioning.ProvisioningException: Failed to provision C:\a\_work\1\s\xamarin-android\Xamarin.Android.Sdk-13.1.99.88.vsix

In this case, we were downloading a classic Xamarin.Android build for
use on a test lane for `One .NET` tests?

To make things better, let's skip this step completely for `One .NET`
tests. We shouldn't need to provision classic Xamarin.Android on these
test lanes.

This also has the added benefit of faster test runs, just
spot-checking the time spent on the above build:

* Saves 1-2 min of time for `provisionator` on macOS lanes.
* Saves up to ~24 min of time for  `provisionator` on Windows lanes.
@jonathanpeppers
Copy link
Member Author

Seems like it is working, One .NET lanes:

image

VS legacy lanes:

image

@jonathanpeppers jonathanpeppers marked this pull request as ready for review December 19, 2022 15:36
@jonpryor jonpryor merged commit 08013e0 into dotnet:main Jan 3, 2023
@jonathanpeppers jonathanpeppers deleted the use-provisionator-less branch January 3, 2023 20:42
grendello added a commit to grendello/xamarin-android that referenced this pull request Jan 4, 2023
* main:
  [build] skip provisioning of Xamarin.Android on .NET lanes (dotnet#7646)
  Bump to dotnet/installer@1c4be07 8.0.100-alpha.1.22622.3 (dotnet#7657)
jonathanpeppers added a commit that referenced this pull request Mar 21, 2023
Context: https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=7102687&view=logs&j=270ba80a-9de5-5c73-abb9-bb787532a07c&s=25cdcba1-3ecb-5490-0002-daf27c697525&t=306f7057-edf0-58b5-5004-8b3b311950d4&l=449

`provisionator` is a source of random failures like:

	[21:41:23 ERR] Error Xamarin.Provisioning.ProvisioningException: Failed to provision C:\a\_work\1\s\xamarin-android\Xamarin.Android.Sdk-13.1.99.88.vsix

In this case, we were downloading a Classic Xamarin.Android build for
use on a test lane for `One .NET` tests?

Improve things, and skip this step completely for `One .NET` tests.
We don't need to provision Classic Xamarin.Android on these lanes.

This also has the added benefit of faster test runs, just
spot-checking the time spent on the above build:

  * Saves 1-2 min of time for `provisionator` on macOS lanes.
  * Saves up to ~24 min of time for `provisionator` on Windows lanes.
@github-actions github-actions bot locked and limited conversation to collaborators Jan 23, 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