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

1463 Коммитов

Автор SHA1 Сообщение Дата
Gregory Szorc 6d0ba89f9a Bug 1430878 - Use larger EC2 instances for Clang toolchain tasks; r=glandium
We now have access to workers running on EC2 instances with dozens of
vCPUs. gecko-<L>-b-linux-large is m4.10xlarge, m5.12xlarge, c5.9xlarge,
or c4.8xlarge. gecko-<L>-b-linux-xlarge is m5.24xlarge, m4.16xlarge,
or c5.18xlarge.

Experimentation reveals that Clang tasks are the only tasks that
are CPU efficient enough (read: cost effective) to run on these
larger worker types.

This commit defines the new worker types and switches Clang toolchain
tasks to run on the new workers. clang5 and clang6 tasks take ~30 minutes
on the -large variant but ~17 minutes on the -xlarge variant. All other
tasks don't show as linear of a speedup. So running them on the
-xlarge variant isn't justified.

As part of this change, Mac toolchain tasks have been converted
to run on gecko-<L>-b-linux* workers. The gecko-<L>-b-macosx64 workers
are actually Linux. IMO the b-macosx64 worker type is no longer needed.
Moving the toolchain tasks off the worker should hopefully not be very
controversial.

MozReview-Commit-ID: HynQPMWiWHo

--HG--
extra : rebase_source : 1142767e2a51c17880909ec6f15b694db8a43af2
2018-02-20 13:35:54 -08:00
Tom Prince eb430111ab Bug 1439258: Set SCCACHE controlling environment variables on windows workers; r=dustin
Since comm-central doesn't have integration branches like autoland, we want to
always disable sccache on nightly builds, rather than being able to key off of
the tree to determine whether to enable it. This is currently done by not
including the sccache toolchain. However, the mozconfig files expect sccache to be
available if `SCCACHE_DISABLE` isn't set, which wasn't the case on windows.

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

--HG--
extra : rebase_source : 565d0b6a3b24a23f6ae844a8cd97b9824e9f5282
extra : amend_source : 8c1679a71a2baf04a0dc83074234c5101705b806
2018-02-18 14:01:57 -07:00
Tom Prince 903c53c463 Bug 1421062: Use correct scope prefixes in repackage signing tasks; r=jlorenzo
Differential Revision: https://phabricator.services.mozilla.com/D611

--HG--
extra : rebase_source : ddd122dc61eb77196eb8f96dd176a495a4851191
extra : histedit_source : 040d3db277cc4d0ae3b700a008b98d999356439a
2018-02-19 21:09:11 -07:00
Gurzau Raul 3daf5ac131 Merge mozilla-central to inbound. a=merge CLOSED TREE 2018-02-17 00:13:16 +02:00
Gurzau Raul 0fbbd0fd8e Merge inbound to mozilla-central. a=merge 2018-02-17 00:09:28 +02:00
Narcis Beleuzu cac28623a1 Backed out changeset 2de04e1a46bd (bug 1431872) on request from marco for running ccov builds also on autoland and inbound. a=backout 2018-02-16 14:29:18 +02:00
Rail Aliiev ad68e73d49 Bug 1398796 - Do uptake monitoring in TC r=mtabara
MozReview-Commit-ID: 5xqEQUWOmqf

--HG--
rename : build/sparse-profiles/update-verify => build/sparse-profiles/mozharness
2018-02-15 08:49:45 -05:00
Marco Castelluccio 7d4ce72d01 Bug 1431872 - Set run-on-project for Linux and Windows coverage builds. r=jmaher
--HG--
extra : rebase_source : dc902495f349286644cc64025784325b4028a377
2018-02-15 17:30:54 +01:00
Tom Prince f841577066 Bug 1429603: Remove code for uploading artifacts from buildbot to taskcluster; r=Callek
Differential Revision: https://phabricator.services.mozilla.com/D523

--HG--
extra : rebase_source : 947d3aab0dfae36a2a819249ac4a093a33385c5d
2018-01-31 14:54:51 -07:00
Nick Thomas 8fe6732ec1 Bug 1425571 - remove deprecated pulse-notify config for jobs that moved to tc-notify, r=aki
MozReview-Commit-ID: 2SPnApHlY2d

--HG--
extra : rebase_source : cf3e43009363827e36458b5e39476ff4f6df3311
2018-02-14 13:13:56 +13:00
Nick Thomas 193b9b5fb1 Bug 1425571 - switch to taskcluster-notify for all but the notify tasks, r=aki
MozReview-Commit-ID: EDmlXF7SIdv

--HG--
extra : rebase_source : 95855171d39b08222a10ddf4c8b00235364ff2d5
2018-02-14 12:57:50 +13:00
Simon Fraser 891b18d755 Bug 1436977 Disable partials diff caching for macosx r=rail
MozReview-Commit-ID: i1oe7foWam

--HG--
extra : rebase_source : eacbf3c070444302ab441d36a79e721327802453
2018-02-13 10:42:05 +00:00
Brian Stack 6d5d64a66e Bug 1437738 - Update actions to new repo scopes r=jonasfj r=pmoore a=Aryx on a CLOSED TREE
MozReview-Commit-ID: 5kNs3OqqjMw

--HG--
extra : amend_source : 256cbbb1cca08c01d0555afdcc015d54b494367a
2018-02-12 22:56:15 -08:00
Tom Prince 13f8033d55 Bug 1426445: Add sanity check that worker uid/gid is 1000 in run-task; r=dustin,gps
MozReview-Commit-ID: 7T7rQpLhJIN

--HG--
extra : rebase_source : 950b111946ef3248aedb825d280754954b8f54ad
2018-01-02 14:22:36 -07:00
Tom Prince 024c479e0b Bug 1426445: Purge task caches, when an incompatible cache is found; r=gps
Differential Revision: https://phabricator.services.mozilla.com/D395

--HG--
extra : rebase_source : 1c2a16c6e851c578d3430092c8688770da5ab5b5
2018-01-15 22:00:50 -07:00
Ben Hearsum 3aa9091c1a bug 1398799: split update verify primary/secondary tasks into multiple kinds. r=aki
--HG--
extra : amend_source : 3525f171c54fd48a2d65cd2d783f3998d0bd8dd8
2018-02-07 14:54:11 -05:00
Ben Hearsum 3403f15207 bug 1398799: don't add depedencies when current task and upstream task don't have a matching build platform. r=aki 2018-02-07 14:50:10 -05:00
Aki Sasaki a7ef9a0c06 bug 1431799 - add ship_fennec_rc relpro flavor. r=bhearsum
Also add rc-{google-play-track,rollout-percentage} for RC pushapk.

One nice side effect of using the same push-apk kind: we don't re-run push-apk during the ship_fennec relpro flavor if we've run the ship_fennec_rc flavor with the same build. (Google Play would reject the same buildid.)

This is really for bug 1433536, but MozReview is forcing me to include this patch with the others for reasons.

MozReview-Commit-ID: 69ymqVLv9E2

--HG--
extra : rebase_source : b87d4dd2394788a5452ff3f52a8ca5022a15b9ee
extra : intermediate-source : 7a826d274a4828018a836cf1149df29d403a7c11
extra : source : a3c60b0370a3e08ce765f87c1d7d5dad24879881
2018-02-02 14:50:38 -08:00
Aki Sasaki 00b7bee43f bug 1431799 - rename desktop_release_type -> release_type. r=bhearsum
This used to only be relevant to Devedition and Firefox releases.
In bug 1433536 we're going to add RC Fennec releases. Let's rename
the parameter now, for less parameters churn.

MozReview-Commit-ID: 28e1Y5FG4On

--HG--
extra : rebase_source : 59d41887d856481ab85bb8d2221dfcebca4430b0
extra : source : 4c96e312d88a3f7037c1eb39a3031d4baf997015
2018-02-01 10:07:03 -08:00
Aki Sasaki 86f7b2f5e3 bug 1431799 - add RC secondary tasks. r=bhearsum
MozReview-Commit-ID: 2hq4K5QVbWy

--HG--
rename : taskcluster/ci/release-balrog-publishing/kind.yml => taskcluster/ci/release-secondary-balrog-publishing/kind.yml
rename : taskcluster/ci/release-notify-ship/kind.yml => taskcluster/ci/release-secondary-notify-ship/kind.yml
extra : rebase_source : 58a1297f50f182209290a1a968ece11eb8216e13
extra : source : 4887dd855680205a24f34f54a64a85de31d1bfa9
2018-01-29 16:19:52 -08:00
Aki Sasaki 5795b692ae bug 1431799 - add `version` input to release promotion action. r=bhearsum
also clean up and move more config to the promotion config.

MozReview-Commit-ID: FmTWNNPcEaZ

--HG--
extra : rebase_source : 40431217fafb6796dbd65c7dfeab0e891ac1bbd4
extra : source : 0f5418a83477c1b6b221e4d28515792410e504d0
2018-01-26 13:09:35 -08:00
Brian Stack a455ebaa63 Bug 1434959 - Copy taskgraph before optimizing in actions r=dustin
MozReview-Commit-ID: 7uPM7X4vS3F

--HG--
extra : rebase_source : ca34daf158196ab38fe0f45f83ed6914fe5f2a51
2018-02-05 11:15:44 -08:00
Andrew Halberstadt f354075c7a Bug 1434430 - [flake8] Fix blank 'except' statements r=rwood
This is a new issue that gets linted with flake8 3.5.0. Basically you should
never use a blank except: statement.

This will catch all exceptions, including KeyboardInterrupt and SystemExit
(which is likely not intended). If a catch all is needed, use
`except: Exception`.  If you *really* mean to also catch KeyboardInterrupt et
al, use `except: BaseException`.

Of course, being specific is often better than a catch all.

MozReview-Commit-ID: FKx80MLO4RN

--HG--
extra : rebase_source : 7c74a7d0d81f2c984b47aff3a0ee3448b791177b
2018-01-31 14:32:08 -05:00
Geoff Brown c9855d0638 Bug 1434411 - Allow task configuration of target name; r=dustin 2018-02-01 14:26:54 -07:00
Johan Lorenzo 275f452928 Bug 1421062 - fixup linter issue r=bustage
--HG--
extra : rebase_source : 8dbc855fa6a236421bb85400e151891bf943490c
2018-02-01 19:11:17 +01:00
Johan Lorenzo 6d4bff6f65 Bug 1421062 - Make signing format dependent of scope-prefix r=tomprince
--HG--
extra : rebase_source : 11eef852140160b85ae30121afc53eb0d0927ccd
2018-02-01 18:21:46 +01:00
Marco Castelluccio 4c242df620 Bug 1417497 - Enable signing for the Windows code coverage build. r=aki
--HG--
extra : rebase_source : 998f9f13cb820b1c6e21ae01e733c45774cdd8c4
2018-01-31 22:39:20 +01:00
Cosmin Sabou 7092b51729 Merge mozilla-central to autoland. a=merge on CLOSED TREE 2018-02-01 01:19:48 +02:00
Ben Hearsum 793a66b98a bug 1434693: better error message when you forget to add VOLUMEs to docker images. r=dustin 2018-01-31 15:20:11 -05:00
Tom Prince d8968f156b Bug 1434365: Remove unused by-platform option for L10N config-paths; r=Callek
Differential Revision: https://phabricator.services.mozilla.com/D513

--HG--
extra : rebase_source : 3c4345c3442f74d4f86fc2d801c251d93f8b6045
2018-01-30 11:51:23 -07:00
Tom Prince 6b745cb132 Bug 1434365: Add support for specifying mozharness config paths and checking out comm-central to repackage tasks; r=aki
Differential Revision: https://phabricator.services.mozilla.com/D512

--HG--
extra : rebase_source : dc165357115f51475279f90679b89c14ec1c6038
2018-01-30 11:50:57 -07:00
Tom Prince 521c194c6c Bug 1434365: Move repackage mozharness config selection to yaml; r=aki
Differential Revision: https://phabricator.services.mozilla.com/D511

--HG--
extra : rebase_source : 69e82fe6623609412ee6150a32ea0001b07d5c30
2018-01-30 11:44:30 -07:00
shindli f713c5d75e Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-02-01 00:37:57 +02:00
Tom Prince ddeeb0fdef Bug 1434361: Inherit optimization of signing tasks from upstream task; r=aki
Differential Revision: https://phabricator.services.mozilla.com/D508

--HG--
extra : rebase_source : 0f05a8ed1bb9d35816db1418e5094338d76c0ab9
2018-01-26 15:37:03 -07:00
Aki Sasaki 28c81a5f8e bug 1430834 - don't add beetmover-checksums to push-apk upstreamArtifacts. r=jlorenzo
MozReview-Commit-ID: 8OMNJyyf5bK
2018-01-24 13:37:26 -08:00
Gregory Szorc 59b5e99b26 Bug 1432395 - Change cache version to force new caches; r=glandium
This is basically the same deal as e331a3b9fae2. Caching is hard.

MozReview-Commit-ID: 9uWHHdnHgq1

--HG--
extra : rebase_source : fc7107a018f067d83dbee3796d8861c5187823b2
2018-01-29 15:15:41 -08:00
Cosmin Sabou 37bb870512 Merge mozilla-central to autoland. a=merge on a CLOSED TREE 2018-01-30 00:47:39 +02:00
Tom Prince d0a8cfbb8a Bug 1433975: Error out if a parent docker image isn't present in the configuration; r=dustin
MozReview-Commit-ID: ASeCAXLzOEZ

--HG--
extra : rebase_source : f8aabee33e98bc7e76310a24d4cc5ca908b38814
2018-01-29 11:03:06 -07:00
Joel Maher b2e035bcdf Bug 1433702 - run linux64 talos on new moonshot hardware via taskcluster instead of buildbot and IX hardware. r=rwood 2018-01-29 10:56:58 -05:00
Mike Hommey ae1ce5d571 Bug 1433033 - Workarounds for Debian stretch. r=dustin
The apt in Debian stretch doesn't allow repositories with a Release file
not being GPG signed. Setting up GPG signatures on the
taskcluster-artifact-based repositories is a tricky process, and not
strictly necessary. It turns out not creating a Release file at all
works just as well, and works across all current Debian versions. The
packages priorities remain the same, such that packages from those
repositories are still prefered over the ones from the main Debian
repository (as long as versions are higher).

See comment in cloud-mirror-workaround.sh for that part.

--HG--
extra : rebase_source : df5af330859a314285a6c1922d899489997d2f19
2018-01-25 22:26:06 +09:00
Mike Hommey 49993bfe85 Bug 1432390 - Allow to derive docker images from other in-tree images. r=dustin
So far, the best we've been able to do is to upload an image to the
docker hub, and point an image's Dockerfile's FROM to the version
uploaded onto the hub.

That is a cumbersome process, and makes the use of "layered" docker
images painful.

This change allows to declare a parent docker image in the
taskcluster/ci/docker-image/kind.yml definitions, which will be
automatically loaded before building the image. The Dockerfile can then
reference the image, using the DOCKER_IMAGE_PARENT argument, which will
contain the full image name:tag.

Some details are left off, for now, such as VOLUMEs. At this point,
VOLUMEs should all be defined in leaf docker images.

--HG--
extra : rebase_source : 221cff0ca5a91d694ff5c3626fe707c15ba45e23
2018-01-25 11:07:54 +09:00
Mike Hommey fd6ffda3c8 Bug 1432390 - Make `mach taskcluster-build-image` talk directly to the docker socket in the image builder. r=dustin
Now that `mach taskcluster-build-image` can, we can avoid all the manual
handling based on curl and jq in the image builder.

An additional advantage on relying on `mach taskcluster-build-image`
doing more is that less changes to the build-image.sh script will be
necessary, and thus less updates of the image builder docker image.

--HG--
extra : rebase_source : dd174d60675e41e4391894f28235c674c1840829
2018-01-25 13:36:47 +09:00
Mike Hommey f5386c6b51 Bug 1432390 - Directly call the docker API over its unix socket instead of calling `docker build`. r=dustin
This allows to avoid writing out a tar file to then extract it to feed
it to `docker build`. This is essentially what the image-builder docker
image does, except it uses a temporary file for the tar.

--HG--
extra : rebase_source : 8275d737e02714fc198d3ba3d3e62e3f18d8e0bf
2018-01-24 15:55:31 +09:00
Mike Hommey 378f47ff49 Bug 1432390 - Directly call the docker API over its unix socket instead of calling docker load. r=dustin
While spawning `docker load` is likely to work on developer machines,
on automation, it requires a docker client that is the exact same
version as the server running on the taskcluster worker for
docker-in-docker, which is not convenient. The API required for `docker
load` is rather simple, though, and can be mimicked quite easily.

While this change in itself is not necessary for developer machines,
it will allow to re-use the same command for the image-builder to
load a parent docker images when deriving one from another. We could
keep a code branch using `docker load` but it seems wasteful to maintain
two branches when one can work for both use cases.

--HG--
extra : rebase_source : d72956d7dd329b92564cbaa3fbfe0687d4d5d994
2018-01-24 14:25:09 +09:00
Mike Hommey 16c5f4c5f4 Bug 1432390 - Use zstandard and requests modules instead of spawning curl | zstd in docker.load_image. r=dustin
The zstd command we spawn, if available at all, might be the wrong
version: zstd changed its stream format in an incompatible way at some
point, and the version shipped in e.g. Ubuntu 16.04 uses the old format,
while the version taskcluster relies on uses the new format.

Relying on gps's zstandard library allows to ensure we use the right
version. Another advantage is that we can trivially pip install it in a
virtualenv if it isn't available on the system running the command.

If we're ridding ourselves of the subprocess spawning for zstd, we might
as well cover curl as well. Especially considering the error handling
when subprocesses are involved is not trivial, such that the current
error handling code is actually broken and leads to dead-lock
conditions, when, for example, curl is still waiting for the python side
to read data, but the python side is not reading data anymore because
an exception was thrown in the tar reading loop.

--HG--
extra : rebase_source : 054c37cfaa68bf475b37545ebaa99144584b93d4
2018-01-24 11:18:13 +09:00
Mike Hommey b83d215e99 Bug 1432390 - Remove explicit exception handling in docker.load_image(). r=dustin
The used pattern:
  except Exception:
    error = sys.exc_info()[0]
  finally:
    ...
    if error:
      raise error

actually loses everything that is interesting about the original
exception. Not catching the exception just makes it thrown up the stack,
except when a different exception is thrown from the finally block,
which is what that if error: raise error is attempting to do... except
it doesn't throw the original exception, but its type only.

--HG--
extra : rebase_source : 17601fcc90fcdfefd93c4267f3cd33425d5326fd
2018-01-24 11:17:27 +09:00
Mike Hommey 784400b0bb Bug 1432390 - Avoid creating a temporary file for generate_context_hash. r=dustin
Now that we don't need to read the contents of a file to hash the
contents of a docker image context, we can avoid creating a file
in generate_context_hash.

--HG--
extra : rebase_source : 98abe9bfdc48b612a3d251296991d0f769b449fd
2018-01-23 17:24:04 +09:00
Mike Hommey d936a6c5d2 Bug 1432390 - Hash the contents of the docker image context as it is created. r=dustin
This will allow us, down the line, to avoid creating a file at all in
some cases.

--HG--
extra : rebase_source : e4ea40341836cf24aa6d61c905b2efa660ee13f2
2018-01-23 17:12:03 +09:00
Gurzau Raul 501d80ba77 Merge mozilla-central to autoland. a=merge CLOSED TREE 2018-01-25 19:06:59 +02:00
Aki Sasaki f8ee472c6f Bug 1431397 - part2: fix release_eta when it's None p=aki r=jlorenzo
--HG--
extra : source : c349de6dc73428fb8b09ff9f416e581dcfe9e05a
extra : amend_source : 2bed7eb11b536b345fb8b30f2d47c85424024ae9
2018-01-24 12:27:34 -08:00