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

[ci] Add nightly build and test pipeline #5549

Merged
merged 6 commits into from
Jan 28, 2021
Merged

Conversation

pjcollins
Copy link
Member

@pjcollins pjcollins commented Jan 26, 2021

Context: #5098

A new azure-pipelines-nightly.yaml build pipeline file has been added
to run our longer running build and test tasks that we don't want to run
against every commit or PR build. This new pipeline is scheduled to run
every day at 3:00am UTC. The pipeline will only run if there have been
source code changes since the last successful scheduled run. For more
information see the scheduled triggers documentation.

This new nightly pipeline starts with a commercial build on macOS, which
provides an opportunity to run time consuming Roslyn analyzers. Other
code analysis steps can be added to this nightly build in the future.

After the build completes, the artifacts that are produced will be used
by new supplemental test jobs. Five new emulator test environments
have been added to this nightly pipeline which will allow us to run
tests on a broader set of Android versions. The following emulators are
now available for testing:

Android 5.0 (API 21) - x86
Android 6.0 (API 23) - x86
Android 7.0 (API 24) - x86
Android 8.0 (API 26) - x86_64
Android 9.0 (API 28) - x86_64

These new test jobs currently only run the default configuration of the
Mono.Android-Tests suite against our legacy installers. It should be
easy to extend these jobs to run additional tests as needed.

Some clean up has also been applied to the main azure-pipelines.yaml
file. Usage of XA.Commercial.Build has been removed, as any builds
using this file will always be "commercial". Additionally, the test
environment update from commit 75317db allows us to remove a
supplemental mono installation step as a newer mono is available on
these machines.

Adds support for installing and launching emulators with different API
levels and architectures:

    msbuild /t:InstallAvdImage;AcquireAndroidTarget tests\Mono.Android-Tests\Mono.Android-Tests.csproj /p:TestAvdApiLevel=21
@pjcollins pjcollins force-pushed the scheduled-build-test branch 4 times, most recently from 10d3a0d to 5d3b681 Compare January 27, 2021 17:19
@pjcollins
Copy link
Member Author

https://devdiv.visualstudio.com/DevDiv/_build/results?buildId=4415170&view=results was triggered automatically by the latest temporary scheduling changes. I'll revert that commit and mark the PR ready assuming all current jobs run as expected.

@pjcollins pjcollins marked this pull request as ready for review January 28, 2021 01:16
@pjcollins pjcollins requested a review from grendello as a code owner January 28, 2021 01:16
@jonpryor jonpryor merged commit 916d24b into master Jan 28, 2021
@jonpryor jonpryor deleted the scheduled-build-test branch January 28, 2021 22:57
@github-actions github-actions bot locked and limited conversation to collaborators Jan 24, 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.

5 participants