Closed Bug 1643842 Opened 8 months ago Closed 8 months ago

Can't artifact build Firefox on Linux opt from autoland changesets

Categories

(Firefox Build System :: General, defect)

defect

Tracking

(firefox79 fixed)

RESOLVED FIXED
mozilla79
Tracking Status
firefox79 --- fixed

People

(Reporter: Gijs, Assigned: tomprince)

References

Details

Attachments

(6 files)

Someone in the fx-desktop-dev matrix channel had some build issues earlier:

https://matrix.to/#/!mbruiMqkXiqZMMNqXa:mozilla.org/$pzLXzXX4P1BBo_-wPBHwDWa12_AHYnShN-fr8pYL4qs?via=mozilla.org&via=matrix.org&via=archlinux.org

 0:19.34 Searching Taskcluster index with namespace: gecko.v2.autoland.revision.431b35a5b06ce4e543a38d35a38e2625a9ae2314.firefox.linux64-opt
 0:19.42 Trying to find artifacts for hg revision 33847bf1cfbb5c7203b42c397b10da217d367bc7 on tree integration/autoland.
 0:19.42 Searching Taskcluster index with namespace: gecko.v2.autoland.revision.33847bf1cfbb5c7203b42c397b10da217d367bc7.firefox.linux64-opt
 0:19.49 Tried 50 pushheads, no built artifacts found.
 0:19.54 make[3]: *** [Makefile:140: recurse_artifact] Error 1
 0:19.54 make[2]: *** [/home/asif/src/mozilla-central/config/recurse.mk:34: artifact] Error 2
 0:19.54 make[1]: *** [/home/asif/src/mozilla-central/config/rules.mk:390: default] Error 2
 0:19.54 make: *** [client.mk:125: build] Error 2
 0:19.54 0 compiler warnings present.

When building from https://hg.mozilla.org/integration/autoland/rev/f5f4f276e171 shortly after it landed.

Part of me is not super surprised by this - the builds haven't finished on that rev! - but the fact that we couldn't find builds in the next 50 pushheads is confusing. I'm wondering abou the linux64-opt thing, because https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=33847bf1cfbb5c7203b42c397b10da217d367bc7 has shippable linux64 opt builds showing that finished like 4-5 hours ago. Are we not using those? Or is the naming in the index just confusing / not matching the artifact config that local ./mach build is using anymore?

Full mozconfig from yoasif:

# Automatically download and use compiled C++ components:
ac_add_options --enable-artifact-builds

A mozilla-central build worked, and I can see in the taskcluster index that we have the build artifacts there, but not on autoland. But I don't understand why. So it seemed worth filing a bug... perhaps some jobs got renamed, or reduced in frequency on autoland? Either way it seems worth being able to use the shippable artifacts from linux when building on linux.

Duplicate of this bug: 1644090

Yeah, we turned off opt builds on autoland because they are more or less duplicating the work that the shippable builds do (which we can't turn off, because we run perf tests against them).

I didn't realize that local artifact builds depending on the autoland opt builds. Should they point at mozilla-central instead?

Assignee: nobody → bhearsum

(In reply to bhearsum@mozilla.com (:bhearsum) from comment #2)

Yeah, we turned off opt builds on autoland because they are more or less duplicating the work that the shippable builds do (which we can't turn off, because we run perf tests against them).

I didn't realize that local artifact builds depending on the autoland opt builds. Should they point at mozilla-central instead?

artifact builds will build off whatever cset they're being run on, like normal builds, so they can be run on autoland revisions. Using artifacts from a different base revision risks a busted browser because of a mismatch between the JS/CSS/markup bits and the compiled bits from a different revision (especially on webidl/xpconnect API surfaces).

I think non-debug artifact builds should be using the artifacts from the shippable builds, on both central and autoland (which I think they already do on macOS, unsure about Windows).

(In reply to :Gijs (he/him) from comment #3)

(In reply to bhearsum@mozilla.com (:bhearsum) from comment #2)

Yeah, we turned off opt builds on autoland because they are more or less duplicating the work that the shippable builds do (which we can't turn off, because we run perf tests against them).

I didn't realize that local artifact builds depending on the autoland opt builds. Should they point at mozilla-central instead?

artifact builds will build off whatever cset they're being run on, like normal builds, so they can be run on autoland revisions. Using artifacts from a different base revision risks a busted browser because of a mismatch between the JS/CSS/markup bits and the compiled bits from a different revision (especially on webidl/xpconnect API surfaces).

I think non-debug artifact builds should be using the artifacts from the shippable builds, on both central and autoland (which I think they already do on macOS, unsure about Windows).

OK, cool! I think Tom is working on this in https://phabricator.services.mozilla.com/D78621 as it turns out.

Assignee: bhearsum → mozilla

This deliberately excludes builds that are implemented using the artifact build machinery,
but are not primarly intended to short-circuit build time. In particular the Windows aarch64
builds are not marked this way.

The android shippable builds have the test artifacts in a en-US directory,
since the builds are multi-l10n builds.

Duplicate of this bug: 1645513

There are various binaries that are included in test archives that are
necessary for artifact builds to be repackaged. Don't generate artifact build
variants of tasks without them.

Pushed by mozilla@hocat.ca:
https://hg.mozilla.org/integration/autoland/rev/ad901d67145b
Add an attribute to indicate which builds are explicitly artifact builds; r=nalexander
https://hg.mozilla.org/integration/autoland/rev/eb5c2760e3f2
Don't depend on profile-generation if we are an artifact build; r=nalexander
https://hg.mozilla.org/integration/autoland/rev/10af23bd0fd7
Use shippable builds for artifact builds; r=nalexander
https://hg.mozilla.org/integration/autoland/rev/d31329aee315
Allow tests to be in en-US directory for artifact builds; r=nalexander
https://hg.mozilla.org/integration/autoland/rev/3e3de4d0afc8
Don't try run multi-l10n in artifact builds; r=nalexander
https://hg.mozilla.org/integration/autoland/rev/97216905ee9b
Don't try generate artifact builds of builds without tests; r=nalexander
You need to log in before you can comment on or make changes to this bug.