Investigate why automation is producing an empty "sourcestamp.txt" file
Categories
(Release Engineering :: Release Automation: Other, defect, P1)
Tracking
(firefox51 wontfix, firefox52 fixed, firefox-esr52 fixed, firefox-esr68 fixed, firefox53 fixed, firefox54 fixed, firefox69 fixed)
People
(Reporter: Dexter, Assigned: mshal)
References
Details
(Whiteboard: [measurement:client:tracking])
Attachments
(4 files, 4 obsolete files)
(deleted),
patch
|
Dexter
:
review+
gchang
:
approval-mozilla-aurora+
jcristau
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
(deleted),
patch
|
ted
:
review+
|
Details | Diff | Splinter Review |
(deleted),
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-esr68+
|
Details |
(deleted),
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-esr68+
|
Details |
Reporter | ||
Updated•8 years ago
|
Reporter | ||
Comment 1•8 years ago
|
||
Comment 2•8 years ago
|
||
Reporter | ||
Comment 3•8 years ago
|
||
Comment 4•8 years ago
|
||
Reporter | ||
Comment 5•8 years ago
|
||
Reporter | ||
Comment 6•8 years ago
|
||
Comment 7•8 years ago
|
||
Reporter | ||
Comment 8•8 years ago
|
||
Comment 9•8 years ago
|
||
Comment 10•8 years ago
|
||
Reporter | ||
Comment 11•8 years ago
|
||
Reporter | ||
Comment 12•8 years ago
|
||
Comment 13•8 years ago
|
||
Comment 14•8 years ago
|
||
bugherder |
Reporter | ||
Comment 15•8 years ago
|
||
Comment 16•8 years ago
|
||
Comment 17•8 years ago
|
||
bugherder uplift |
Comment 18•8 years ago
|
||
Comment 19•8 years ago
|
||
bugherder uplift |
Comment 20•8 years ago
|
||
bugherder uplift |
Comment 21•8 years ago
|
||
Reporter | ||
Comment 22•8 years ago
|
||
Reporter | ||
Comment 23•8 years ago
|
||
Comment 24•8 years ago
|
||
Reporter | ||
Comment 25•8 years ago
|
||
Comment 26•8 years ago
|
||
Reporter | ||
Updated•8 years ago
|
Comment 27•8 years ago
|
||
Comment 28•8 years ago
|
||
Comment 29•8 years ago
|
||
Comment 30•8 years ago
|
||
Comment 31•8 years ago
|
||
Updated•8 years ago
|
Comment 32•8 years ago
|
||
Reporter | ||
Comment 33•8 years ago
|
||
Comment 34•8 years ago
|
||
Comment 35•8 years ago
|
||
Comment 36•8 years ago
|
||
Reporter | ||
Comment 37•8 years ago
|
||
Reporter | ||
Comment 39•8 years ago
|
||
Comment 40•5 years ago
|
||
Are there any news on this?
Neither the firefox-60.6.3esr
nor firefox-66.0.5
package has content in sourcestamp.txt
Reporter | ||
Comment 41•5 years ago
|
||
(In reply to msirringhaus from comment #40)
Are there any news on this?
Neither thefirefox-60.6.3esr
norfirefox-66.0.5
package has content in sourcestamp.txt
Not that I know of, I transitioned to a different project now :(
Rail, any chance someone with some build system knowledge could tackle this on your end? I don't think I'll have time :(
Comment 42•5 years ago
|
||
Now that we moved all release graphs to gecko, it should be straight forward to iterate on this.
After a quick search, I found that the source tarball is generated by this definition:
https://searchfox.org/mozilla-central/source/taskcluster/ci/release-source/kind.yml
which uses this mozharness config:
https://searchfox.org/mozilla-central/source/testing/mozharness/configs/builds/releng_sub_linux_configs/64_source.py
which uses the source-package
target, which is defined in:
https://searchfox.org/mozilla-central/source/toolkit/mozapps/installer/packager.mk#168
Something tells me that the make-sourcestamp-file
targe is never called:
https://searchfox.org/mozilla-central/source/toolkit/mozapps/installer/packager.mk#121
We can either try adding the make-sourcestamp-file
target to the mozharness config file before the source-package
, or add a dependency on make-sourcestamp-file
in packager.mk
.
Not sure which way is preferable.
Mike, maybe you have better ideas?
Comment 43•5 years ago
|
||
Oh, I was wrong, the source-package
target explicitly calls $(MAKE) make-sourcestamp-file
. It's something else that prevents it from being generated. Maybe it doesn't like the fact that we package sources without compiling the binaries (missing ini files in dist) or something related to --disable-compile-environment in .mozconfig.
Maybe we should be running this in a normal build environment with all build deps installed?
Comment 44•5 years ago
|
||
All mozharness tasks in taskcluster have MOZ_SOURCE_CHANGESET
set to the correct value (here), which is the same as what gets put in application.ini
(via here and here). So, at least in automation, when generating the source directly, we should be able to bypass looking at application.ini
for the value.
Assignee | ||
Comment 45•5 years ago
|
||
From the packager.mk code, there are two values that are supposed to go into sourcestamp.txt - the buildid, and the MOZ_SOURCE_URL, which is something like https://hg.mozilla.org/mozilla-unified/rev/123abc...
The buildid part is failing with the platform.ini error, which is what the patches attached to this bug are intended to fix. Using ewong's r+'d patch seems to work locally for me, but I can't test on try (#c35).
The source url isn't getting written, and doesn't look like it was ever written, because we don't set MOZILLA_OFFICIAL=1 in the mozconfig (#c27, #c28). That should be a quick change to the linux64/source mozconfig:
diff --git a/browser/config/mozconfigs/linux64/source b/browser/config/mozconfigs/linux64/source
index 8bc6af77a7276..8ad4faf6b3fe7 100644
--- a/browser/config/mozconfigs/linux64/source
+++ b/browser/config/mozconfigs/linux64/source
@@ -3,3 +3,4 @@
# extra dependencies on specific toolchains, e.g. gtk3.
ac_add_options --disable-compile-environment
ac_add_options --disable-nodejs
+export MOZILLA_OFFICIAL=1
With ewong's patch and the mozconfig patch, I get a sourcestamp.txt file that looks like this:
$ cat sourcestamp.txt
20190523160757
https://hg.mozilla.org/mozilla-unified/rev/c50b4c90d56a76d96c138adfc3562cc5f135257a
Is this what we want it to look like in the end? And rail, do you have a way to test those out in automation?
Comment 46•5 years ago
|
||
mach try fuzzy --full -q '^release-source !sign'
Assignee | ||
Comment 47•5 years ago
|
||
Comment 48•5 years ago
|
||
Oh, nice! Thanks for the help, Mike!
Shall we just land this then?
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 49•5 years ago
|
||
This is the same as ewong's patch in bug 1338099, just rebased and now
in phabricator.
The $(BUILDID) make variable tries to use either application.ini or
platform.ini to fetch the buildid, and if those don't exist then we end
up with an empty buildid. An error message is displayed, but it doesn't
cause the make invocation to fail because it happens inside a $(shell).
Instead we can fetch the buildid similar to the source url, by
generating buildid.h and grabbing the value via awk.
Assignee | ||
Comment 50•5 years ago
|
||
MOZ_INCLUDE_SOURCE_INFO is needed for us to write out the MOZ_SOURCE_URL
in sourcestamp.txt, and MOZ_INCLUDE_SOURCE_INFO is set in configure only
for MOZILLA_OFFICIAL=1 builds.
Depends on D32518
Updated•5 years ago
|
Comment 51•5 years ago
|
||
Comment 52•5 years ago
|
||
tyvm!pw-wspx.org
Comment 53•5 years ago
|
||
I meant "thank you very much", but somehow my selection clipboard from one the commits also ended up here :D
Comment 54•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/802132d21228
https://hg.mozilla.org/mozilla-central/rev/b556436df7df
Comment 55•5 years ago
|
||
This is also a problem on esr68, should it be uplifted there?
Assignee | ||
Comment 56•5 years ago
|
||
Comment on attachment 9067415 [details]
Bug 1338099 - Ensure sourcestamp.txt has a buildid; r?#firefox-build-system-reviewers
ESR Uplift Approval Request
- If this is not a sec:{high,crit} bug, please state case for ESR consideration: This patch is needed to produce a non-empty sourcestamp.txt file
- User impact if declined: sourcestamp.txt in firefox source tarballs will be empty, making it hard to identify the origin commit and repository.
- Fix Landed on Version:
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): This change only affects a text file, not the browser itself.
- String or UUID changes made by this patch:
Assignee | ||
Updated•5 years ago
|
Comment 57•5 years ago
|
||
Comment on attachment 9067415 [details]
Bug 1338099 - Ensure sourcestamp.txt has a buildid; r?#firefox-build-system-reviewers
NPOTB for Firefox. Approved for 68.5esr.
Updated•5 years ago
|
Comment 58•5 years ago
|
||
bugherder uplift |
https://hg.mozilla.org/releases/mozilla-esr68/rev/a5bfe5e0d388
https://hg.mozilla.org/releases/mozilla-esr68/rev/e9a7f943da2a
Description
•