-
Notifications
You must be signed in to change notification settings - Fork 554
[sample-tester] Collect app size and build duration statistics. #7517
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
Conversation
|
|
|
Build success |
|
❌ Build was (probably) aborted 🔥 Jenkins job (on internal Jenkins) failed in stage(s) 'Running XM tests on '10.11'' 🔥 : hudson.AbortException: Xamarin.Mac tests on macOS 10.11 failed (xammac_tests) ✅ Build succeeded ✅ API Diff (from stable) |
tests/sampletester/ProcessHelper.cs
Outdated
| var watch = Stopwatch.StartNew (); | ||
| var failed = false; | ||
| try { | ||
| AssertRunProcess ("msbuild", sb.ToArray (), TimeSpan.FromMinutes (5), Configuration.SampleRootDirectory, environment_variables, "build"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding
environment_variables ["MTOUCH_ENV_OPTIONS"] = "--timestamp --timestamp --timestamp --timestamp";would produce more data, from mtouch itself.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll add the timestamp data as well.
Although it ends up confusing/incorrect when building app extensions, since those are built in parallel with the main app: https://gist.github.com/rolfbjarne/570cb3301d35173467a17826f559feb9
| xml.WriteAttributeString ("configuration", configuration); | ||
| if (!failed) { | ||
| xml.WriteAttributeString ("duration", watch.ElapsedTicks.ToString ()); | ||
| xml.WriteAttributeString ("duration-formatted", watch.Elapsed.ToString ()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can it be more granular, e.g. --timestamp above and the data from msbuild /v:diag task times ?
If we see an increase we won't be able to know what's causing it without running both the current and older builds. The older ones might become hard (e.g. new Xcode/OS requirement) to reproduce.
| }; | ||
| var xml = XmlWriter.Create (logfile, xmlSettings); | ||
| xml.WriteStartDocument (true); | ||
| xml.WriteStartElement ("perf-data"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we gather the versions (mono, SDK...) somewhere ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also is there a baseline project (to compare across different bots hardware) ? or is that leaved for later (analysis) ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we gather the versions (mono, SDK...) somewhere ?
Indirectly, through the tested hash, but I'll make it explicit as well.
Also is there a baseline project (to compare across different bots hardware)
That's still a TODO 😄
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
|
Build success |
|
✅ Jenkins job (on internal Jenkins) succeeded ✅ Build succeeded ✅ API Diff (from stable) |
No description provided.