Граф коммитов

765 Коммитов

Автор SHA1 Сообщение Дата
Mike Shal 3b8df1c395 Bug 1580028 - Always merge PGO profile data in the run task; r=firefox-build-system-reviewers,chmanchester
If the run task generates bad profile data, the merge step in the
profile-use task will fail. However, retrying the profile-use task
doesn't fix the problem, and there isn't a straightforward way to retry
the run task in this situation. Instead we can add a clang toolchain to
all the run tasks, and perform the merge there.

This means the output from the run task will always be a successfully
merged file called 'merged.profdata', and we no longer need to perform
the merge as part of the profile-use build as a GENERATED_FILES step.

Depends on D45262

Differential Revision: https://phabricator.services.mozilla.com/D45263

--HG--
extra : moz-landing-system : lando
2019-09-10 21:56:15 +00:00
Edwin Takahashi 1cb0ac3980 Bug 1565332 - restore set -e in the debian-specific block in test-linux.sh r=gbrown
I found that I did not restore the `set -e` flag after temporarily disabling it in the debian10-specific piece of experimental code in `test-linux.sh`, and this caused a bunch of my try pushes to register as successful despite having multiple unexpected failures.

Differential Revision: https://phabricator.services.mozilla.com/D44774

--HG--
extra : moz-landing-system : lando
2019-09-06 13:37:54 +00:00
Chris Manchester c843481e4b Bug 1578852 - Update wrench-deps to use rustc 1.37 r=firefox-build-system-reviewers,dmajor
Differential Revision: https://phabricator.services.mozilla.com/D44929

--HG--
extra : moz-landing-system : lando
2019-09-06 20:08:52 +00:00
Edwin Takahashi 3607d54634 Bug 1565332 - add new dockerfile for debian 10 (buster) test image and add necessary piping without switching the main CI pipeline from ubuntu 16.04 r=jmaher
Differential Revision: https://phabricator.services.mozilla.com/D42597

--HG--
extra : moz-landing-system : lando
2019-08-31 09:59:43 +00:00
Nick Alexander 545bb000da Bug 1576971 - Fail browsertime toolchain harder. r=barret
Differential Revision: https://phabricator.services.mozilla.com/D43655

--HG--
extra : moz-landing-system : lando
2019-08-28 20:58:19 +00:00
Nick Alexander e09210e873 Bug 1534533 - Add geckodriver toolchain tasks. r=chmanchester
There was quite a bit of discussion of this in `#build` on IRC,
and the consensus was that geckodriver should be built as a
stand-alone Rust crate and not as part of Firefox/Gecko (say, as a new
--enable-project target). This follows that approach, and the
expression, modeled off of cbindgen but updated to cross compile from
a Linux host to all targets, is pretty straight-forward.

A sparse profile would be nice, but the way that the Gecko Cargo
workspace works means that the profile must accumulate Rust code from
many locations.

If we want to, eventually testing/geckodriver can be removed from the
top-level Rust workspace, the geckodriver-signing tasks migrated to
these toolchain tasks, consumers migrated to the signing tasks, and
geckodriver removed from the "common" test archive.

Differential Revision: https://phabricator.services.mozilla.com/D43646

--HG--
rename : taskcluster/scripts/misc/vs-setup.sh => taskcluster/scripts/misc/vs-setup32.sh
extra : moz-landing-system : lando
2019-08-28 20:54:06 +00:00
Chris Manchester de2343b7fc Bug 1572880 - Package dist-toolchains from a specific directory. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D43696

--HG--
extra : moz-landing-system : lando
2019-08-28 18:34:29 +00:00
Mike Hommey 8afaba2056 Bug 1575760 - Make `mach vendor rust` create a .cargo/config and check it in the tree. r=nalexander
Maybe back when .cargo/config.in was added, the directory indicated for
vendored crates needed to be absolute. That is at least not the case
with the current supported versions of rust.

The current setup has a few caveats:
- .cargo/config.in has shown to become stale (it currently contains
  multiple unused entries)
- non-gecko build tasks have to generate a .cargo/config on their own if
  they want to use vendored crates
- in turn, non-gecko build tasks that don't, may unknowingly get their
  dependencies from crates.io (see the recent attempt at moving
  geckodriver builds to a separate task).

By checking in a .cargo/config file, we can alleviate the last two, but
that comes at the price of `cargo update` not wanting to act when
.cargo/config exists, because of the source replacement configuration.

But rust vendor gently generates a suitable configuration on its own, so
we can use that to generate a .cargo/config automatically. Which
addresses the first caveat of the current setup. That leaves us with
`cargo update` not working out of the box, but that just requires people
running it to manually remove .cargo/config first. Which is arguably
what rust wants you to do in the first place. It's kind of incidental
that we started with a .cargo/config.in rather than .cargo/config.

Now, while a simple .cargo/config works, that's not enough for the case
where the objdir doesn't live inside the source directory. In that case
cargo looks for the configuration from the objdir, and fails to find it.
So we still need a .cargo/config.in, which we generate with a little
trick.

Differential Revision: https://phabricator.services.mozilla.com/D43012

--HG--
rename : .cargo/config.in => .cargo/config
extra : moz-landing-system : lando
2019-08-26 22:20:32 +00:00
Dustin J. Mitchell af8483e1ae Bug 1562686 - use AWS_IAM_CREDENTIALS_URL for all S3 sccache invocations r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D41454

--HG--
extra : moz-landing-system : lando
2019-08-23 12:39:25 +00:00
Razvan Maries 3d74e341f9 Backed out 2 changesets (bug 1562686) as per glandium's request. CLOSED TREE
Backed out changeset 0ce37eda652a (bug 1562686)
Backed out changeset fe7b9445e1d3 (bug 1562686)
2019-08-22 02:43:16 +03:00
Dustin J. Mitchell 13f9bc563c Bug 1562686 - use AWS_IAM_CREDENTIALS_URL for all S3 sccache invocations r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D41454

--HG--
extra : moz-landing-system : lando
2019-08-20 14:03:12 +00:00
Razvan Maries cff855aa9c Backed out changeset 91eca815c9fc (bug 1562686) for build bustages. CLOSED TREE 2019-08-16 22:38:19 +03:00
Dustin J. Mitchell ad85abed68 Bug 1562686 - use AWS_IAM_CREDENTIALS_URL for all S3 sccache invocations r=chmanchester
Differential Revision: https://phabricator.services.mozilla.com/D41454

--HG--
extra : moz-landing-system : lando
2019-08-16 17:17:02 +00:00
Mike Hommey 515ab2e11d Bug 1574128 - Fixup for bug 1573435 to unbust webrender-windows jobs. r=me
MANUAL PUSH: Fix bustage on inbound.
2019-08-15 20:09:27 +09:00
Mike Hommey 8d5dc26045 No bug - Bustage fix for Windows gn builds. r=me
MANUAL PUSH: This fixes bustage on inbound on a CLOSED TREE.
2019-08-15 12:25:32 +09:00
Mike Hommey c173540215 Bug 1573435 - Use toolchain fetches for all remaining toolchain uses. r=nalexander
The remaining uses all need adjustements to in-tree mozconfigs, so they
all need to be done at once.

However, to make things slightly more intelligible, we do this in two
steps. This is step 1: we modify the use_toolchain transform to take care of
the transformation, while keeping the task definitions intact, so that
we only deal with mozconfig and build script adjustements here.

Differential Revision: https://phabricator.services.mozilla.com/D41890
2019-08-15 11:21:52 +09:00
Mike Hommey 57a88cbf46 Bug 1573435 - Use toolchain fetches for source-test builds. r=nalexander
While here, use GECKO_PATH instead of $HOME/checkouts/gecko.

Differential Revision: https://phabricator.services.mozilla.com/D41889
2019-08-15 11:21:51 +09:00
Mike Hommey 6257ba9912 Bug 1573435 - Use toolchain fetches for spidermonkey builds. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D41739
2019-08-15 11:21:50 +09:00
Mike Hommey 9b57b7f93c Bug 1573435 - Use toolchain fetches for hazard builds. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D41738
2019-08-15 11:21:49 +09:00
Mike Hommey ab2269d011 Bug 1469697 - s/GECKO_DIR/GECKO_PATH/ for hazard build scripts. r=nalexander
Most other tasks use GECKO_PATH, as that's what run-task uses.

Differential Revision: https://phabricator.services.mozilla.com/D41725
2019-08-15 11:21:45 +09:00
Mike Hommey fb26d1619a Bug 1469697 - Use run-task transform for spidermonkey tasks. r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D41724
2019-08-15 11:21:44 +09:00
Mike Hommey f56829593a Bug 1573375 - Normalize paths run-task sets in the environment on Windows. r=tomprince
Using forward slash for better support in shell scripts.

Differential Revision: https://phabricator.services.mozilla.com/D41707
2019-08-15 11:21:41 +09:00
Mike Hommey 94532ae09f Bug 1573375 - Wrap fetch-content output in run-task. r=tomprince
Like the output from other subcommands.

Differential Revision: https://phabricator.services.mozilla.com/D41706
2019-08-15 11:21:40 +09:00
Mike Hommey a4e51ec9ee Bug 1572381 - Use the same tooltool manifest for webrender as for other tasks using vs2017. r=nalexander
It turns out this task doesn't use cmake or ninja (anymore?).

Differential Revision: https://phabricator.services.mozilla.com/D41164

--HG--
extra : moz-landing-system : lando
2019-08-12 16:13:15 +00:00
Mike Hommey 648907c1b4 Bug 1571986 - Kill vctip at the end of more tasks. r=nalexander
Also, since we had problems with mspdbsrv in the past, kill it too.

Differential Revision: https://phabricator.services.mozilla.com/D41340

--HG--
extra : moz-landing-system : lando
2019-08-09 16:06:42 +00:00
Mike Hommey d2cebb5e64 Bug 1571986 - Kill vctip at the end of the wrench-windows task. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D41165

--HG--
extra : moz-landing-system : lando
2019-08-08 15:40:17 +00:00
Dustin J. Mitchell b6c8e578bf Bug 1572132 - fix URL generation in fetch-content r=glandium
MANUAL PUSH: to allow docker images to build without closing autoland

Differential Revision: https://phabricator.services.mozilla.com/D41038

--HG--
extra : rebase_source : 60ae00549917411d1839b6e3f8e6ae962d217470
extra : amend_source : a2531b115f5732345f8c34c88669428510d100a4
2019-08-07 15:53:15 +00:00
Mike Hommey bf3d27d7b7 Bug 1571986 - Add some info to try to find what is going on. r=me
MANUAL PUSH: because it starts happening with something that landed on inbound.
2019-08-07 16:52:55 +09:00
Mike Hommey d931e57c8e Bug 1571596 - Reduce the number of toolchain scripts for GCC. r=nalexander
Now that all GCC and related source tarballs extract to paths
independent of their version number, the scripts are all very
look-alike, so they can be consolidated.

Differential Revision: https://phabricator.services.mozilla.com/D40749
2019-08-07 13:54:27 +09:00
Mike Hommey 375094b924 Bug 1571596 - Repack GCC and related source tarballs. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40748
2019-08-07 13:54:27 +09:00
Mike Hommey b3c14183b8 Bug 1571589 - Allow simple manipulation of file paths in fetched archives. r=tomprince
Namely:
- adding a prefix,
- stripping path components.

Differential Revision: https://phabricator.services.mozilla.com/D40741
2019-08-07 13:54:26 +09:00
Mike Hommey 890f87dad8 Bug 1571589 - Allow to repack downloaded archives "on the fly". r=tomprince
Bug 1479533 was proposing to add a similar functionality, but this
iteration avoids actually unpacking anything, and ensures
reproducibility by relying on the reproducible bits from the original
archives: file ordering, flags, etc. (since they are checksummed, those
are never going to change for a given archive).

Another notable difference is that this applies the repack on the fetch
task itself, rather than create a separate task to apply the repack. The
latter has advantages, in that it allows to change the repacking without
redownloading the original file from a third-party server, but in
practice, most changes to the repacking would trigger the download tasks
anyways.

This patch only takes care of changing the archive type (zip->tar), and
the compression type (anything->zstandard).

Differential Revision: https://phabricator.services.mozilla.com/D40740
2019-08-07 13:54:25 +09:00
Mike Hommey 525bccdd60 Bug 1571589 - Abstract opening a temporary file and renaming it after close. r=tomprince
And use that in git_checkout_archive.

Differential Revision: https://phabricator.services.mozilla.com/D40739
2019-08-07 13:54:24 +09:00
Mike Hommey 34a2eebc79 Bug 1571589 - Use urlparse rather relying on just splitting on / being enough. r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D40738
2019-08-07 13:54:23 +09:00
Mike Hommey 57786654e0 Bug 1571562 - Use toolchain fetches instead of use_toolchain references in toolchain task definitions. r=nalexander
And remove the use of tooltool-download where it's not needed anymore.

Differential Revision: https://phabricator.services.mozilla.com/D40714
2019-08-07 13:54:20 +09:00
Mike Hommey 0d49eb3466 Bug 1571562 - Make tooltool-download.sh download and extract to MOZ_FETCHES_DIR. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40712
2019-08-07 13:54:18 +09:00
Mike Hommey 034e9b6b7b Bug 1570541 - Use git fetch tasks for clang. r=froydnj
What this means is that the sources for clang/llvm are downloaded
separately from the toolchain build (which also means we finally only
download a given version of clang once for all platforms).

In turn, this means the build-clang.py script needs to start with an
existing llvm-project tree, and we choose to make build-clang.py expect
that it's run from the llvm-project root directory.

This also means we don't need to download git for the windows toolchain
task.

Differential Revision: https://phabricator.services.mozilla.com/D40402
2019-08-07 13:54:15 +09:00
Mike Hommey a57cc9b49f Bug 1570541 - Use tarfile in fetch-content on Windows. r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D40401
2019-08-07 13:54:14 +09:00
Mike Hommey 246fa80fb3 Bug 1570598 - Reduce the number of scripts used to build clang toolchains. r=froydnj
They are now all very similar, and there are only a few variations.

Differential Revision: https://phabricator.services.mozilla.com/D40365

MANUAL PUSH: avoid closing autoland while toolchains are rebuilt.
2019-08-03 07:08:50 +09:00
Mike Hommey 9b84c9014f Bug 1570598 - Pass the clang json file as an argument to the toolchain script. r=froydnj
Make the argument use the same format as resources, so move the
sub-script invocation accordingly.

Differential Revision: https://phabricator.services.mozilla.com/D40364
2019-08-03 07:08:49 +09:00
Mike Hommey 98bd74773e Bug 1570598 - Consistently use GECKO_PATH and MOZ_FETCHES_DIR in toolchain scripts. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40187
2019-08-03 07:08:48 +09:00
Mike Hommey e2daeefe33 Bug 1570598 - Use a common setup file for Visual Studio in toolchain scripts. r=nalexander
This has the side effect of making gn a 64-bits binary. Keeping it
32-bits is not worth the effort.

Differential Revision: https://phabricator.services.mozilla.com/D40186
2019-08-03 07:08:47 +09:00
Mike Hommey 7c09816a13 Bug 1570598 - Make windows clang toolchain tasks download artifact from GECKO_PATH. r=nalexander
This makes the setup used by these builds more similar to everywhere
else, making subsequent improvements easier.

Differential Revision: https://phabricator.services.mozilla.com/D40185
2019-08-03 07:08:46 +09:00
Mike Hommey 65e385dc5d Bug 1570598 - Use GECKO_PATH instead of WORKSPACE/build/src in tooltool-download.sh. r=nalexander
This removes the need for the hacks in wr-macos-cross-build-setup.sh and
wrench-windows-tests.sh, while keeping things working in other scripts.

Differential Revision: https://phabricator.services.mozilla.com/D40184
2019-08-03 07:08:46 +09:00
Mike Hommey 9648466042 Bug 1570240 - Use a fetch task artifact for android-rs-glue source. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40034
2019-08-03 07:08:45 +09:00
Mike Hommey ebf4f74742 Bug 1570240 - Use fetch tasks' artifacts for clang-8-mingw sources. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40033
2019-08-03 07:08:44 +09:00
Mike Hommey f2d5d3ee9e Bug 1570240 - Use a fetch task artifact to get fxc2 source. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40032
2019-08-03 07:08:43 +09:00
Mike Hommey 7aad59e35d Bug 1570240 - Use fetch tasks' artifacts to get sccache and openssl source. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D40031
2019-08-03 07:08:43 +09:00
Mike Hommey 5096ed0b29 Bug 1570240 - Use a fetch task artifact to get grcov source. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40030
2019-08-03 07:08:42 +09:00
Mike Hommey 89e989fe7c Bug 1570240 - Use a fetch task artifact to get gn source. r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D40029
2019-08-03 07:08:41 +09:00