This adds a `--level` option to taskcluster-graph, and passes the level
supplied from mozilla-taskcluster. It then substitutes that into cache names
for just about every cache (tooltool being the exception, as it verifies hashes
and is thus immune to poisoning). The scopes for these new cache names are
already included in the relevant `moz-tree:level:*` roles.
This also strips `-c6` from cache names; I added this when we were
transitioning from the Ubuntu-based build images, to ensure I got clean caches.
It's no longer necessary.
We're already casting the list of scopes to a set later. So we might as
well use a set from the beginning.
While we're here, sort the final value so output is more deterministic
and easier to read. This sort shouldn't matter since the existing set()
would have lost ordering.
This adds test configs for desktop linux64 unittests, including: mochitest-plain,
mochitest-browser-chrome, mochitest-devtools-chrome, reftest and xpcshell. It
also does a minor refactor of the b2g configs to remove some b2g-specific logic
from the base 'test.yml' config.
This does *not* schedule these tests anywhere just yet.
This adds test configs for desktop linux64 unittests, including: mochitest-plain,
mochitest-browser-chrome, mochitest-devtools-chrome, reftest and xpcshell. It
also does a minor refactor of the b2g configs to remove some b2g-specific logic
from the base 'test.yml' config.
This does *not* schedule these tests anywhere just yet.
This included adding the slugid 1.0.6 python source code in /python since slugid
is now a dependency of the ./mach taskcluster-graph command, as well us updating
references that used it. Previously the implementation was in-tree.
taskcluster-graph and taskcluster-build mach command now has the
--interactive option and try supports the "-i" flag.
This makes all tasks interactive.
This required moving the custom mozharness configs out of the builder image
(which puts them in ~, where mozharness no longer looks) and moving them into
mozharness itself.
This required moving the custom mozharness configs out of the builder image
(which puts them in ~, where mozharness no longer looks) and moves them into
mozharness itself.
Now that mozharness is in tree, we don't need references to mozharness
repositories and revisions.
We don't cleanup all mozharness stuff because android and desktop builds
still references external mozharness.
This removes ambiguity as to which modules are being imported, making
import slightly faster as Python doesn't need to test so many
directories for file presence.
All files should already be using absolute imports because mach command
modules aren't imported to the package they belong to: they instead
belong to the "mach" package. So relative imports shouldn't have been
used.
Tracing imports reveals that this file accounts for a non-trivial amount
of extra imports when mach starts. Deferring imports makes many of them
go away.
taskcluster-build is a very useful commands to perform build tests
without submitting a bunch of branching jobs. Moreover, it helps
newcomers to play with taskcluster.