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] Use the template to generate a matrix strategy which reduces the yaml explosion. #18312

Merged
merged 7 commits into from
May 30, 2023

Conversation

mandel-macaque
Copy link
Member

The final result is the same, but because a matrix strategy is a native element of azure pipeline, it does not get expanded. This makes our pipeline to be reduce to under 10.000 lines of yaml when it was around 40.000. This should unblock the dev of #18279

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2

This comment has been minimized.

@vs-mobiletools-engineering-service2
Copy link
Collaborator

💻 [CI Build] Windows Integration Tests passed 💻

All Windows Integration Tests passed.

Pipeline on Agent
Hash: 22e978b774c015d88e6c5839a90d3b57a5e3caf3 [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

💻 [PR Build] Tests on macOS M1 - Mac Ventura (13.0) passed 💻

All tests on macOS M1 - Mac Ventura (13.0) passed.

Pipeline on Agent
Hash: [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

💻 [PR Build] Tests on macOS M1 - Mac Big Sur (11.5) passed 💻

All tests on macOS M1 - Mac Big Sur (11.5) passed.

Pipeline on Agent
Hash: [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

📚 [PR Build] Artifacts 📚

Packages generated

View packages

Pipeline on Agent
Hash: [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

✅ API diff for current PR / commit

Legacy Xamarin (No breaking changes)
  • iOS (no change detected)
  • tvOS (no change detected)
  • watchOS (no change detected)
  • macOS (no change detected)
NET (empty diffs)
  • iOS: (empty diff detected)
  • tvOS: (empty diff detected)
  • MacCatalyst: (empty diff detected)
  • macOS: (empty diff detected)

✅ API diff vs stable

Legacy Xamarin (No breaking changes)
.NET (No breaking changes)
Legacy Xamarin (stable) vs .NET

✅ Generator diff

Generator diff is empty

Pipeline on Agent
Hash: 22e978b774c015d88e6c5839a90d3b57a5e3caf3 [PR build]

@vs-mobiletools-engineering-service2
Copy link
Collaborator

🚀 [CI Build] Test results 🚀

Test results

✅ All tests passed on VSTS: simulator tests.

🎉 All 235 tests passed 🎉

Tests counts

✅ bcl: All 69 tests passed. Html Report (VSDrops) Download
✅ cecil: All 1 tests passed. Html Report (VSDrops) Download
✅ dotnettests: All 1 tests passed. Html Report (VSDrops) Download
✅ fsharp: All 7 tests passed. Html Report (VSDrops) Download
✅ framework: All 8 tests passed. Html Report (VSDrops) Download
✅ generator: All 2 tests passed. Html Report (VSDrops) Download
✅ interdependent_binding_projects: All 7 tests passed. Html Report (VSDrops) Download
✅ install_source: All 1 tests passed. Html Report (VSDrops) Download
✅ introspection: All 8 tests passed. Html Report (VSDrops) Download
✅ linker: All 65 tests passed. Html Report (VSDrops) Download
✅ mac_binding_project: All 1 tests passed. Html Report (VSDrops) Download
✅ mmp: All 2 tests passed. Html Report (VSDrops) Download
✅ mononative: All 12 tests passed. Html Report (VSDrops) Download
✅ monotouch: All 35 tests passed. Html Report (VSDrops) Download
✅ msbuild: All 2 tests passed. Html Report (VSDrops) Download
✅ mtouch: All 1 tests passed. Html Report (VSDrops) Download
✅ xammac: All 3 tests passed. Html Report (VSDrops) Download
✅ xcframework: All 8 tests passed. Html Report (VSDrops) Download
✅ xtro: All 2 tests passed. Html Report (VSDrops) Download

Pipeline on Agent
Hash: 22e978b774c015d88e6c5839a90d3b57a5e3caf3 [PR build]

@mandel-macaque mandel-macaque merged commit c5ef1a0 into main May 30, 2023
@mandel-macaque mandel-macaque deleted the matrix-vs-template branch May 30, 2023 14:26
mandel-macaque added a commit to dotnet/maui that referenced this pull request May 30, 2023
Templates are being abused and is resulting in a tempalte explosion,
this means that when the templates get expanded we have 100 thousans of
lines generated. Azure devops has a limit in the size of the expanded
template, and once that limit is reached, the pipeline wont be able to
execute.

This changes makes the problem go away since a matrix is a native object
for azure pipelines and does not get expanded.

This PR only takes care of the android emulator tests. A similar PR can
be found in the xamarin-macios project:

xamarin/xamarin-macios#18312
rmarinho pushed a commit to dotnet/maui that referenced this pull request May 30, 2023
* [CI] Remove the template explosion in the CI via a matrix

Templates are being abused and is resulting in a tempalte explosion,
this means that when the templates get expanded we have 100 thousans of
lines generated. Azure devops has a limit in the size of the expanded
template, and once that limit is reached, the pipeline wont be able to
execute.

This changes makes the problem go away since a matrix is a native object
for azure pipelines and does not get expanded.

This PR only takes care of the android emulator tests. A similar PR can
be found in the xamarin-macios project:

xamarin/xamarin-macios#18312

* Indentation.

* Fix matrix case anming.

* Fix name.

* The job does not longer need to be unique per api.

* Same with the display name.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants