Closed
Bug 1243448
Opened 9 years ago
Closed 9 years ago
beta release source builder failing to run configure
Categories
(Release Engineering :: Release Automation, defect)
Release Engineering
Release Automation
Tracking
(firefox45 fixed, firefox46 fixed, firefox47 fixed)
RESOLVED
FIXED
People
(Reporter: jlund, Unassigned)
References
Details
Attachments
(3 files, 3 obsolete files)
809 bytes,
patch
|
nthomas
:
review+
|
Details | Diff | Splinter Review |
3.69 KB,
patch
|
rail
:
review+
jlund
:
checked-in+
|
Details | Diff | Splinter Review |
241 bytes,
patch
|
Callek
:
review+
|
Details | Diff | Splinter Review |
because SingleSourceFactory doesn't use tooltool.
e.g. failure http://buildbot-master74.bb.releng.usw2.mozilla.com:8001/builders/release-mozilla-beta-firefox_source/builds/7
proposed solutions:
1) use tooltool in singlesourcefactory
2) force it to use a custom mozconfig
3) replace 'make source-package' with a custom script so we don't need configure at all
full irc (#releng):
07:49:00 <Callek> mshal: any insight? https://ftp.mozilla.org/pub/firefox/candidates/45.0b1-candidates/build1/logs/release-mozilla-beta-firefox_source-bm74-build1-build7.txt.gz
07:52:29 <mshal> Callek: did tooltool run? I see it get copied into the mock environment, but not actually run & download packages
07:52:35 <mshal> which is why it can't find gtk3's pkg-config
07:53:41 <Callek> mshal: bah! no..... we hadn't run tooltool in the source builder before...
07:53:48 <mshal> ahh
07:53:50 <Callek> mshal: this is also partly because we 'package' the source
07:54:13 <mshal> well I think this is the primary error: /builds/slave/rel-m-beta-fx_source-000000000/mozilla-beta/configure: line 18050: /builds/slave/rel-m-beta-fx_source-000000000/mozilla-beta/./gtk3/usr/local/bin/pkg-config: No such file or directory
07:54:21 <mshal> which happens because you don't have gtk3 downloaded from tooltool
07:54:53 <Callek> rail: bhearsum: any memory of why we run configure for the source builder?
07:55:19 <•bhearsum> because we use "make source-package" IIRC?
08:00:14 <Callek> rail: mshal: sooo, to fix source builders we need to both run tooltool as part of the source builder now, and adjust excludes at https://dxr.mozilla.org/mozilla-central/source/toolkit/mozapps/installer/upload-files.mk#798
08:00:29 <Callek> rail: mshal: unless we can get away with --disable-compile-environment for source to avoid pkg-config?
08:01:45 <mshal> does it need to have gtk3 enabled in configure?
08:02:26 <Callek> mshal: it probably doesn't need/want gtk3 enabled
08:02:26 <rail> I guess we can use different .mozconfig for sources
08:02:49 <Callek> either way though, if we *require* gtk3 in configure we'll barf without gtk3
08:03:04 <mshal> is it hard to make it use a different mozconfig?
08:05:37 <rail> mshal: not at all: https://dxr.mozilla.org/build-central/source/buildbotcustom/process/release.py#458-460
08:06:59 <mshal> ahh, well unless there's some reason source builds need gtk3 enabled in configure, I think a custom mozconfig is probably the easiest
08:07:23 <mshal> (I don't know too much about what source builders actually do, though)
08:07:55 <rail> iirc just ./configure && make source-package hg-bundle
08:10:30 <mshal> the configure is just needed to convert the top-level Makefile.in and such so the Makefile actually exists?
08:10:54 <mshal> or do we also ship the configuration with the source package?
08:11:49 <mshal> hmm, looks like .mozconfig* is excluded
08:17:08 <mshal> maybe we should just replace 'make source-package' with a small shell or python script :)
08:18:15 <rail-brb> yeah, that would be great
Reporter | ||
Comment 1•9 years ago
|
||
courtesy of callek. I am proposing to land this as is now for two reasons:
1) it's somewhat tested
2) it fixes beta1
long term though, nick raised the point of releng naturally 'owning' this mozconfig and thus also having this bite us down the line.
callek: is there a way we can edit this mozconfig so essentially we do something like:
cat $source_mozconfig
# take all of the original
. $topsrcdir/browser/config/mozconfigs/linux64/release
# add/remove the custom bits we need
ac_add_options --disable-compile-environment
I guess it doesn't really matter if we bloat this mozconfig with things we don't need but what may restrict us is including things we can't have..
if r+, I'll land on m-b directly and re-tag
Attachment #8712895 -
Flags: review?(nthomas)
Reporter | ||
Comment 2•9 years ago
|
||
Attachment #8712896 -
Flags: review?(nthomas)
Reporter | ||
Comment 3•9 years ago
|
||
this is for promotion to pick up the fix.
interestingly, it uses 'nightly' mozconfig right now..
Attachment #8712901 -
Flags: review?(nthomas)
Comment 4•9 years ago
|
||
Comment on attachment 8712895 [details] [diff] [review]
160127_source_builder_gtk_mozconfig-gecko.patch
r+ to get us back on track, but I'd like to avoid this divergence in the longterm (ie mozharness source script runs tooltool to provide gtk3 (or whatever), and we go back to the linux64 opt mozconfig).
Attachment #8712895 -
Flags: review?(nthomas) → review+
Updated•9 years ago
|
Attachment #8712901 -
Flags: review?(nthomas) → review+
Comment 5•9 years ago
|
||
Comment on attachment 8712896 [details] [diff] [review]
160127_source_builder_gtk_mozconfig-bbotcustom.patch
This is a global change which I think is going to break release & esr38 for Firefox. Thunderbird is OK because it defines source_mozconfig already, but those two Firefox don't.
There's two options I can see
* land this, then fix m-r and m-esr38 by setting source_mozconfig in their configs back to ../release; remove source_config for m-r when we merge in a few weeks
* not land this, and set source_mozconfig for beta instead; then set it for release when we merge in a few weeks
It's not clear which of those works better for esr45, we're going to have to pay attention either way, and anyway this is going to be superceded by release promotion. So lets take option 2, since it's marginally less work to land.
Attachment #8712896 -
Flags: review?(nthomas) → review-
Reporter | ||
Comment 6•9 years ago
|
||
Attachment #8712896 -
Attachment is obsolete: true
Attachment #8712972 -
Flags: review?(nthomas)
Comment 7•9 years ago
|
||
Comment on attachment 8712972 [details] [diff] [review]
160127_source_builder_gtk_mozconfig-bbotcustom.patch
Looks like attachment 8712896 [details] [diff] [review] again.
Attachment #8712972 -
Attachment is obsolete: true
Attachment #8712972 -
Flags: review?(nthomas)
Comment 9•9 years ago
|
||
Comment on attachment 8713033 [details] [diff] [review]
160127_source_builder_gtk_mozconfig-bbotcfg.patch
hijacking!
Attachment #8713033 -
Flags: review?(nthomas) → review+
Reporter | ||
Comment 10•9 years ago
|
||
Comment on attachment 8712895 [details] [diff] [review]
160127_source_builder_gtk_mozconfig-gecko.patch
landed directly on beta for now. going to backport to inbound and uplift to m-a if this works
Reporter | ||
Comment 11•9 years ago
|
||
Comment on attachment 8713033 [details] [diff] [review]
160127_source_builder_gtk_mozconfig-bbotcfg.patch
thanks! https://hg.mozilla.org/build/buildbot-configs/rev/8b8b715b6951
Attachment #8713033 -
Flags: checked-in+
Reporter | ||
Comment 12•9 years ago
|
||
this worked! need to land on other repos tomorrow and follow up with different mozconfig
Flags: needinfo?(jlund)
Comment 13•9 years ago
|
||
(In reply to Jordan Lund (:jlund) from comment #12)
> this worked! need to land on other repos tomorrow and follow up with
> different mozconfig
I can confirm; if the *only* thing in the mozconfig is:
ac_add_options --disable-compile-environment
We actually are just fine. I did get a slightly different tar.xz sha compared to the bigger version here, though I can't seem to explain that difference considering after unpacking the .tar.xz's into two different directories `diff -r --brief <dir1> <dir2>` yielded *zero* differences.
As did a listing of md5sums compared from both archives extracted files: `find firefox-44.0b4 -type f -print0 | xargs -I{} -0 md5sum {}`
Comment 14•9 years ago
|
||
callek indicates we need this for Thunderbird 45 beta, which we'd like to do very soon this week.
Reporter | ||
Comment 15•9 years ago
|
||
to double check, as per our discussion over irc, you are suggesting that a mozconfig with only this will work?
Attachment #8712895 -
Attachment is obsolete: true
Flags: needinfo?(jlund)
Attachment #8714413 -
Flags: review?(bugspam.Callek)
Comment 16•9 years ago
|
||
Comment on attachment 8714413 [details] [diff] [review]
160201_bug_1243448_source_builder_mozconfig-gecko.patch
Review of attachment 8714413 [details] [diff] [review]:
-----------------------------------------------------------------
Yes I could confirm that it worked!
Attachment #8714413 -
Flags: review?(bugspam.Callek) → review+
Comment 17•9 years ago
|
||
Comment on attachment 8714413 [details] [diff] [review]
160201_bug_1243448_source_builder_mozconfig-gecko.patch
Review of attachment 8714413 [details] [diff] [review]:
-----------------------------------------------------------------
::: browser/config/mozconfigs/linux64/source
@@ +1,1 @@
> +ac_add_options --disable-compile-environment
Though admittedly I would mark a comment (something like):
# The source "build" only needs a mozconfig because we use the build system as our script for generating it. This allows us to run configure without any extra dependencies on specific toolchains, e.g. gtk3.
Comment 18•9 years ago
|
||
Reporter | ||
Updated•9 years ago
|
status-firefox45:
--- → fixed
status-firefox46:
--- → fixed
Comment 19•9 years ago
|
||
bugherder |
You need to log in
before you can comment on or make changes to this bug.
Description
•