[sample-tester] Collect app size and build duration statistics. - #7517
[sample-tester] Collect app size and build duration statistics.#7517rolfbjarne wants to merge 38 commits into
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) |
| 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.
Adding
environment_variables ["MTOUCH_ENV_OPTIONS"] = "--timestamp --timestamp --timestamp --timestamp";would produce more data, from mtouch itself.
There was a problem hiding this comment.
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.
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.
Do we gather the versions (mono, SDK...) somewhere ?
There was a problem hiding this comment.
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.
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.