Closed Bug 1264703 Opened 4 years ago Closed 4 years ago

Add "configure" as a tier for build metrics


(Firefox Build System :: General, defect)

Not set


(firefox48 fixed)

Tracking Status
firefox48 --- fixed


(Reporter: chmanchester, Assigned: chmanchester)




(1 file)

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, 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, 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, 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:
See other reviews:
Attachment #8741570 - Flags: review?(gps)
Comment on attachment 8741570 [details]
MozReview Request: Bug 1264703 - Add configure as a tier to build metrics. r=gps

There is some wonkiness with this patch. But I don't think it is anything too worrying.

(Diff revision 1)
>  	-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 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+
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla48
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.