Closed Bug 1264703 Opened 4 years ago Closed 4 years ago
Add "configure" as a tier for build metrics
58 bytes, text/x-review-board-request
Not sure exactly how complicated this will be, but it would be very nice to be able to chart progress as we move more things out of configure.
The tricky part is that configure is run from client.mk, and all the tier tracking stuff is in Makefiles. I guess one way to deal with it is to add some manual BUILDSTATUS echos in client.mk, and make the mach logic reading that handle the fact that we'd want to add tiers later on, because you won't have the full list of tiers before running configure.
Hm, it looks like the mach code reading tiers already doesn't mind if you call TIERS multiple times. At least, the output locally looks fine, checking on try now...
So the obvious place to put this is around https://dxr.mozilla.org/mozilla-central/rev/21bf1af375c1fa8565ae3bb2e89bd1a0809363d4/client.mk#381, which ends up including backend generation, which we do care about, but might not be exactly what's expected from a number called "configure".
I would expect "configure" to include backend generation.
This adds a "tier" to build status that measures the time to run configure and config.status. Review commit: https://reviewboard.mozilla.org/r/46579/diff/#index_header See other reviews: https://reviewboard.mozilla.org/r/46579/
Attachment #8741570 - Flags: review?(gps)
Comment on attachment 8741570 [details] MozReview Request: Bug 1264703 - Add configure as a tier to build metrics. r=gps https://reviewboard.mozilla.org/r/46579/#review43249 There is some wonkiness with this patch. But I don't think it is anything too worrying. ::: client.mk:370 (Diff revision 1) > ifdef FOUND_MOZCONFIG > -cp $(FOUND_MOZCONFIG) $(OBJDIR)/.mozconfig > endif > > configure:: $(configure-preqs) > + $(call BUILDSTATUS,TIERS configure) I'm kinda surprised that outputting the TIERS line multiple times has the desired effect! I would think last write would win. One weird thing this patch does is make the tier "progress" footer appear during configure. Before, there was an empty line at the bottom of the terminal during configure. What makes it weird is that during configure you only see a "configure" entry in the progress bar. Once configure finishes, the other tiers appear. The next build, the "configure" tier never appears because the configure target from client.mk is never evaluated. That's kinda wonky. But I don't think it matters that much. Although, in automation we'll have some builds that don't run the configure tier. Not sure if that will confuse things. Hopefully not.
Attachment #8741570 - Flags: review?(gps) → review+
4 years ago
Depends on: 1266183
You need to log in before you can comment on or make changes to this bug.