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

58 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 713a866401 Bug 1569355 - Upgrade python-zstandard to 0.11.1. r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D39583

MANUAL PUSH: avoid closing autoland while all docker images and
toolchains are rebuilt due to both changes.
2019-07-30 14:49:16 +09:00
Chris AtLee 0a5c3aa167 Bug 1527394: Squash docker images before exporting/compressing them r=tomprince
Differential Revision: https://phabricator.services.mozilla.com/D19541

--HG--
extra : moz-landing-system : lando
2019-02-23 17:16:43 +00:00
Gregory Szorc 1693cc73d8 Bug 1512188 - Rename --sparse-profile to --gecko-sparse-profile; r=tomprince,dustin
We have multiple source checkouts. --sparse-profile is ambiguous
as to which one it could refer to. Let's rename the argument so it
is prefixed with the repo/project we are checking out.

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

--HG--
extra : moz-landing-system : lando
2018-12-31 18:52:26 +00:00
Gregory Szorc fe09099db1 Bug 1512188 - Rename --vcs-checkout to --gecko-checkout; r=tomprince,dustin
We now have multiple things we may check out. "vcs" meaning "gecko"
is not obvious. Let's change the terminology to be more specific.

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

--HG--
extra : moz-landing-system : lando
2018-12-31 18:51:27 +00:00
Bogdan Tara 8fb34de423 Backed out 8 changesets (bug 1512285, bug 1512188) for fetch bustages CLOSED TREE
Backed out changeset 5e7aa7d98012 (bug 1512188)
Backed out changeset 55874a956ae1 (bug 1512188)
Backed out changeset ac6e2cd6eb32 (bug 1512188)
Backed out changeset f68df074eac1 (bug 1512188)
Backed out changeset f01d2662582f (bug 1512188)
Backed out changeset 35d74dd16706 (bug 1512285)
Backed out changeset 9e95b9bf1201 (bug 1512188)
Backed out changeset ac4a49eb95f5 (bug 1512188)
2018-12-29 07:56:56 +02:00
Gregory Szorc 8c1a7bccef Bug 1512188 - Rename --sparse-profile to --gecko-sparse-profile; r=tomprince,dustin
We have multiple source checkouts. --sparse-profile is ambiguous
as to which one it could refer to. Let's rename the argument so it
is prefixed with the repo/project we are checking out.

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

--HG--
extra : moz-landing-system : lando
2018-12-29 05:13:17 +00:00
Gregory Szorc 8fc5669189 Bug 1512188 - Rename --vcs-checkout to --gecko-checkout; r=tomprince,dustin
We now have multiple things we may check out. "vcs" meaning "gecko"
is not obvious. Let's change the terminology to be more specific.

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

--HG--
extra : moz-landing-system : lando
2018-12-29 05:13:09 +00:00
Gregory Szorc 0b91109d52 Bug 1513429 - Upgrade image_builder to Ubuntu 18.04; r=dustin
This appears to "just work."

While I would like to convert this image to Debian and make it
deterministic, that is more effect than I'm willing to invest at the
moment.

The impetus for this change is unblocking partial clones. Mercurial's
SQLite storage backend apparently hits a SQLite bug in version 3.11
of SQLite (what Ubuntu 16.04 runs) where SQLite complains about
database corruption when there are readers from multiple processes.
Ubuntu 18.04 is running SQLite 3.22 and doesn't exhibit the buggy
behavior.

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

--HG--
extra : moz-landing-system : lando
2018-12-19 17:18:45 +00:00
Bogdan Tara 4df8525ba0 Backed out changeset e52ecfe8a7b1 (bug 1513429) for toolchain failure CLOSED TREE 2018-12-19 06:06:30 +02:00
Gregory Szorc c8190b0144 Bug 1513429 - Upgrade image_builder to Ubuntu 18.04; r=dustin
This appears to "just work."

While I would like to convert this image to Debian and make it
deterministic, that is more effect than I'm willing to invest at the
moment.

The impetus for this change is unblocking partial clones. Mercurial's
SQLite storage backend apparently hits a SQLite bug in version 3.11
of SQLite (what Ubuntu 16.04 runs) where SQLite complains about
database corruption when there are readers from multiple processes.
Ubuntu 18.04 is running SQLite 3.22 and doesn't exhibit the buggy
behavior.

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

--HG--
extra : moz-landing-system : lando
2018-12-19 03:12:19 +00:00
Dorel Luca aab1a051ae Backed out 12 changesets (bug 1512285, bug 1512188) for toolchain failure. CLOSED TREE
Backed out changeset 59813ae1b6ea (bug 1512188)
Backed out changeset 1f56f1e581e2 (bug 1512188)
Backed out changeset 0b3259dc10bd (bug 1512188)
Backed out changeset d0eb311b3c8f (bug 1512188)
Backed out changeset d9585e5d7a3a (bug 1512188)
Backed out changeset b4f3dc9b0956 (bug 1512188)
Backed out changeset 7d88308ca069 (bug 1512285)
Backed out changeset 838f49d718a7 (bug 1512188)
Backed out changeset 6bd036a5166d (bug 1512188)
Backed out changeset 3bcedff402fa (bug 1512188)
Backed out changeset 4f546b3e0b18 (bug 1512188)
Backed out changeset bc4232cfcfb8 (bug 1512188)
2018-12-11 23:08:27 +02:00
Gregory Szorc fdbfadd8e0 Bug 1512188 - Revert to "gecko" for vcs naming; r=tomprince
For historical consistency and consistency with index paths.

"env_prefix" is no longer used after this change, so it has been
removed.

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

--HG--
extra : moz-landing-system : lando
2018-12-11 19:50:56 +00:00
Gregory Szorc 20466b6f0c Bug 1512188 - Rename --sparse-profile to --firefox-sparse-profile; r=tomprince
We have multiple source checkouts. --sparse-profile is ambiguous
as to which one it could refer to. Let's rename the argument so it
is prefixed with the repo/project we are checking out.

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

--HG--
extra : moz-landing-system : lando
2018-12-11 19:50:45 +00:00
Gregory Szorc 3c6f34daeb Bug 1512188 - Rename --vcs-checkout to --firefox-checkout; r=tomprince
We now have multiple things we may check out. "vcs" meaning "firefox"
is not obvious. Let's change the terminology to be more specific.

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

--HG--
extra : moz-landing-system : lando
2018-12-11 19:50:43 +00:00
Dustin J. Mitchell 3e5153cd10 Bug 1498640 - deploy latest image_builder image r=glandium
This uses the latest image_builder image (on docker hub) to build even the
image_builder image.

The change to `docker.py` handles a new API response (`aux`) from the Docker
daemon.  It's unclear what this key means, but displaying it is simple.

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

--HG--
extra : rebase_source : b6a2c2de231bd623521a0a7a0dc595fed059b758
extra : intermediate-source : aa32ba9e6df3e20aab896a63538c8e8a432b4988
extra : source : f33b9e6aca06b7883f048c6c068704680cbfbbb2
2018-10-31 23:02:42 +00:00
Andreea Pavel e3299fd2db Backed out 5 changesets (bug 1498640, bug 1436037, bug 1497660, bug 1505579) for mass failures on a CLOSED TREE
Backed out changeset 914a7a899dd1 (bug 1436037)
Backed out changeset e072757bf691 (bug 1436037)
Backed out changeset b0805a8cf6eb (bug 1505579)
Backed out changeset aa32ba9e6df3 (bug 1498640)
Backed out changeset ce441b8a784c (bug 1497660)
2018-11-15 07:53:41 +02:00
Dustin J. Mitchell 1dc45388bf Bug 1498640 - deploy latest image_builder image r=glandium
This uses the latest image_builder image (on docker hub) to build even the
image_builder image.

The change to `docker.py` handles a new API response (`aux`) from the Docker
daemon.  It's unclear what this key means, but displaying it is simple.

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

--HG--
extra : rebase_source : 2c069da57e416d5e1821e55653d37b23d633ae78
extra : source : f33b9e6aca06b7883f048c6c068704680cbfbbb2
2018-10-31 23:02:42 +00:00
shindli 0d793e558a Backed out changeset f33b9e6aca06 (bug 1498640) for mda permafailures with "Error in test execution: NotFoundError: The object can not be found here." message 2018-11-01 06:20:05 +02:00
Dustin J. Mitchell 8a1d61440f Bug 1498640 - deploy latest image_builder image r=glandium
This uses the latest image_builder image (on docker hub) to build even the
image_builder image.

The change to `docker.py` handles a new API response (`aux`) from the Docker
daemon.  It's unclear what this key means, but displaying it is simple.

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

--HG--
extra : moz-landing-system : lando
2018-10-31 23:02:42 +00:00
Gregory Szorc 99b6ca1c73 Bug 1460475 - Port download-and-compress to Python 3; r=dustin
download-and-compress isn't very complicated and should work on Python 3
with minimal effort. So let's switch it to use Python 3.

MozReview-Commit-ID: 9G1WfcbbKEY

--HG--
extra : rebase_source : 3a6bab06c8500a90413e8b7642a7bf7bdff04a46
2018-05-09 19:41:07 -07:00
Gregory Szorc b92916aaf5 Bug 1460475 - Upgrade python-zstandard in image_builder; r=dustin
Version 0.9.0 bundles a newer version of the zstandard library, which
is a little faster and has a few minor bug fixes (none that we were
likely hitting, however).

MozReview-Commit-ID: 9YgSZ0G41eg

--HG--
extra : rebase_source : 8f5a68323b1e1fe7e9f1dd1a92e132434972d21d
2018-05-09 17:54:38 -07:00
Gregory Szorc c65d079532 Bug 1460475 - Install Python 3 on image_builder; r=dustin
We want Python 3 available everywhere because it is 2018.

MozReview-Commit-ID: L3wufNXKdnp

--HG--
extra : rebase_source : c260923e3c13f8b28e30eaaf6e1bd38f79500052
2018-05-09 17:45:39 -07:00
Gregory Szorc 5d87fc997f Bug 1459737 - Move run-task into taskcluster/scripts; r=dustin
In preparation for making it usable on Windows, after which point
having it in a directory with "docker" in it doesn't make much sense.

MozReview-Commit-ID: Hgu0buFyJwF

--HG--
rename : taskcluster/docker/recipes/run-task => taskcluster/scripts/run-task
extra : rebase_source : 3c0b502d28b5aad54bd04069efbfda88e25bbb20
2018-05-04 17:23:31 -07:00
Simon Fraser 5acab0f13e Bug 1432627 Add shellcheck linter to CI r=ahal
MozReview-Commit-ID: 2IYUsXunfab

--HG--
extra : rebase_source : 806ab4abfb1838a1b5eec279f5e93ce5c703685d
2018-01-29 15:27:04 +00:00
Margareta Eliza Balazs acf50fbab3 Backed out changeset 85794e045326 (bug 1432627) for shell lint failure in /builds/worker/checkouts/gecko/taskcluster/docker/firefox-snap/runme.sh:50:95 on a CLOSED TREE 2018-01-29 19:09:55 +02:00
Simon Fraser 82f0264fa1 Bug 1432627 Add shellcheck linter to CI r=ahal
MozReview-Commit-ID: 2IYUsXunfab

--HG--
extra : rebase_source : a40376ffc66e4a35d30e7e02a6ec208b1f52b021
2018-01-29 15:27:04 +00: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
Simon Fraser 184caf15a0 Bug 1432768 Linting compliance for image builder scripts r=Callek
MozReview-Commit-ID: 3TmtiB47Z5W

--HG--
extra : rebase_source : c66da9713e1732be6f5a6ba26d6b2a18ca17fa34
2018-01-24 12:59:11 +00:00
Margareta Eliza Balazs 8d179d969e Backed out changeset d0dc56c1e423 (bug 1432768) for bustage taskcluster-image-build:error on a CLOSED TREE 2018-01-24 16:56:10 +02:00
Simon Fraser 2789476ffa Bug 1432768 Linting compliance for image builder scripts r=Callek
MozReview-Commit-ID: 3TmtiB47Z5W

--HG--
extra : rebase_source : 7e21151be1125affdcabf2aa4876aea9a97575fd
2018-01-24 12:59:11 +00:00
Mike Hommey 5983078334 Bug 1429996 - Revert partial backout of changeset 22587e6ef7ca from bug 1429669. r=me 2018-01-18 18:54:43 +09:00
Mike Hommey f7984c551b Bug 1430037 - Use sparse checkouts for docker image builds. r=dustin
In many cases, building docker images starts on machines that don't have
a cached checkout, and it often takes forever to get a full clone. It
used to be worsened when 3 jobs could run at the same time because the
worker would start up clean, and 3 jobs would be doing a mercurial clone
at the same time, thrashing I/O, but that part is fortunately fixed.

It is still, however, appreciable not to waste time in the mercurial
clone part of image creation.

--HG--
extra : rebase_source : 8c76bc91e1d5102f68c43e1050d61971fef32e9f
2018-01-11 17:03:09 +09:00
Mike Hommey 8dae24c856 Bug 1430037 - Use the in-tree image builder image to build docker images. r=dustin
The image builder image we use to build docker images is updated
manually, and not necessarily when changes occur in tree that should be
reflected by a new image builder image. For instance, its run-task is
currently outdated. Not enough that it's actually a problem, but it
could rapidly become a problem.

There is also a lot of friction when trying to make changes in how
docker images are built, and while last time I tried, I ended up not
being able to do the changes I wanted to make because the docker version
on the host is too old, but this is already the second time I've been
trying to make things better and hit a wall because the the image
builder is essentially fixed in stone on the docker hub.

So with this change, we make all the docker images use the in-tree image
builder image, except itself, obviously. That one uses the last version
that was uploaded. We may want to update it at some point, but not doing
so will only impact building the image builder image itself, not the
other ones.

--HG--
extra : rebase_source : 978cf033732cbbbb277d206dec69660175b82afa
2018-01-11 17:50:00 +09:00
shindli 334ee0f441 Backed out 2 changesets (bug 1430037) for bustage on beta r=glandium
Backed out changeset 8b80471c1d79 (bug 1430037)
Backed out changeset 800640c0dc3f (bug 1430037)
2018-01-17 04:30:00 +02:00
Mike Hommey 896ba44bb9 Bug 1430037 - Use sparse checkouts for docker image builds. r=dustin
In many cases, building docker images starts on machines that don't have
a cached checkout, and it often takes forever to get a full clone. It
used to be worsened when 3 jobs could run at the same time because the
worker would start up clean, and 3 jobs would be doing a mercurial clone
at the same time, thrashing I/O, but that part is fortunately fixed.

It is still, however, appreciable not to waste time in the mercurial
clone part of image creation.

--HG--
extra : rebase_source : bbe8b001849e59bb655bb0e9766a6071ad38a52c
2018-01-11 17:03:09 +09:00
Mike Hommey 4cdb1025f2 Bug 1430037 - Use the in-tree image builder image to build docker images. r=dustin
The image builder image we use to build docker images is updated
manually, and not necessarily when changes occur in tree that should be
reflected by a new image builder image. For instance, its run-task is
currently outdated. Not enough that it's actually a problem, but it
could rapidly become a problem.

There is also a lot of friction when trying to make changes in how
docker images are built, and while last time I tried, I ended up not
being able to do the changes I wanted to make because the docker version
on the host is too old, but this is already the second time I've been
trying to make things better and hit a wall because the the image
builder is essentially fixed in stone on the docker hub.

So with this change, we make all the docker images use the in-tree image
builder image, except itself, obviously. That one uses the last version
that was uploaded. We may want to update it at some point, but not doing
so will only impact building the image builder image itself, not the
other ones.

--HG--
extra : rebase_source : 73e8fc51ea53af1e647fc1d5093c67d614dd009e
2018-01-11 17:50:00 +09:00
Mike Hommey 08c0116191 Partially backout changeset 22587e6ef7ca from bug 1429669 on a CLOSED TREE. r=me
Because Ubuntu 16.04 changed in a way that busts gl3 tests and we can't
update the desktop1604-test image anymore.

--HG--
extra : amend_source : bfa07f9f77990dd6915b8c92d218227436bc6fc4
2018-01-12 10:45:35 +09:00
Mike Hommey 5f8431c3b1 Bug 1429669 - Separate mercurial conf from install-mercurial.sh. r=dustin
The install-mercurial.sh script currently installs a global mercurial
configuration after installing mercurial manually. In order to share
that configuration with docker images installing a mercurial package
through packages tasks, we move it to a separate file.

We however keep the part setting web.cacerts in install-mercurial.sh,
since it uses a path depending on what kind of environment the script is
run. Moreover, the instructions that come with mercurial to build
Debian packages come with web.cacerts set to the right path already, so
it's not needed in that case anyways.

At the same time, use multiple files in /etc/mercurial/hgrc.d/ instead
of a single /etc/mercurial/hgrc file.

--HG--
extra : rebase_source : 8140d8243cf012489025afe058f467c72224c891
2018-01-11 14:01:31 +09:00
Gregory Szorc f22a8ae72d Backed out changeset 15a9e149f2db (bug 1426445) for build bustage
CLOSED TREE

--HG--
extra : amend_source : 12ae596b4067fd7ce93125880924e6a9e2a4125a
2018-01-05 15:18:12 -08:00
Tom Prince 9ad7a74167 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 : f8dff72bc22242fe12080b2e517b8a8a4b4e27c4
2018-01-02 14:22:36 -07:00
Tom Prince a7ee0c44ac Bug 1425137: Get rid of references to quay.io in taskcluster; r=dustin
MozReview-Commit-ID: HHiu4d69RST

--HG--
extra : rebase_source : fcfe319d6b6361ff2a5540ccee31d16edd684f21
2017-12-13 15:07:34 -07:00
Dustin J. Mitchell 2e7ca17010 Bug 1394883: use /builds/worker in image building; r=gps
This includes adding TASKCLUSTER_VOLUMES to docker image builds directly.  The
env variable is not added as part of the task transform because `run-task` is
not in payload.command.  In fact, build-image.sh calls run-task after doing
some other housekeeping.

Ideally image builds would be turned into jobs and all of this would occur
automatically, but that turns out to be quite a bit too complex for this
incidental fix -- perhaps best solved in another bug.

MozReview-Commit-ID: FYHvafJras7

--HG--
extra : rebase_source : 4e3b9ae9900727e7932c13ced34b3f8596d755d9
2017-08-30 16:30:13 +00:00
Phil Ringnalda 2c559035f7 Backed out 4 changesets (bug 1394883) for Windows signing chain-of-trust failures
CLOSED TREE

Backed out changeset e3f42eca51c1 (bug 1394883)
Backed out changeset 081f830cf285 (bug 1394883)
Backed out changeset 9426705a05af (bug 1394883)
Backed out changeset 3a579a5054ef (bug 1394883)

MozReview-Commit-ID: 2viO8A8arHd
2017-08-31 20:02:34 -07:00
Dustin J. Mitchell 77b187b766 Bug 1394883: use /builds/worker in image building; r=gps
This includes adding TASKCLUSTER_VOLUMES to docker image builds directly.  The
env variable is not added as part of the task transform because `run-task` is
not in payload.command.  In fact, build-image.sh calls run-task after doing
some other housekeeping.

Ideally image builds would be turned into jobs and all of this would occur
automatically, but that turns out to be quite a bit too complex for this
incidental fix -- perhaps best solved in another bug.

MozReview-Commit-ID: FYHvafJras7

--HG--
extra : rebase_source : 4e3b9ae9900727e7932c13ced34b3f8596d755d9
2017-08-30 16:30:13 +00:00
Gregory Szorc 4e063535e6 Bug 1391476 - Automatically set cache/volume permissions in run-task; r=dustin
run-task's --chown and --chown-recursive are only used on volumes and
caches - the only locations that aren't controlled by the Docker image
itself and thus whose permissions could be "undefined."

Previous commits have taught run-task about the locations of all caches
and volumes. Therefore, we no longer need to manually define paths to
chown. Instead, we can chown as a side-effect of the path being a
cache or a volume.

So, this commit changes run-task to chown caches and volumes
automatically. Since we no longer have a use for --chown and
--chown-recursive, those arguments are removed.

There /could/ be some paths that are caches or volumes but aren't
getting defined as such in Taskgraph. I consider this a bug in
Taskgraph and the recourse is to properly define a path as a cache or
a volume there.

MozReview-Commit-ID: 1yqrhjil6gy

--HG--
extra : rebase_source : 82c9ccb33f09d3ce50a6b7c6021e1e5b77d1b738
2017-08-23 12:07:18 -07:00
Gregory Szorc 4e98543647 Bug 1391476 - Require that all cache paths be declared as volumes; r=dustin
See the inline comment for the rationale here.

This check may not catch all volumes and caches. But after subsequent
commits refactor how permissions for caches and volumes are handled,
this edge case will likely result in permissions errors in the task,
so it isn't worth worrying about.

Several Dockerfile have been updated to add missing VOLUME so the check
passes.

In the case of desktop1604-test, we stopped removing
/home/worker/.cache because you can't remove a mount point, which is
what volumes are inside Docker containers.

MozReview-Commit-ID: GEyNkkX00kN

--HG--
extra : rebase_source : 19b3165d8c6e4431aa43dca51828be255e82e34f
2017-08-23 08:57:59 -07:00
Mike Hommey 4d1881e4dd Bug 1355731 - Move tooltool to mozbuild.action. r=gps
--HG--
rename : taskcluster/docker/recipes/tooltool.py => python/mozbuild/mozbuild/action/tooltool.py
extra : rebase_source : 6278d8692956a67f37fd788df894657d6eeb53e8
2017-02-22 17:20:41 +09:00
Gregory Szorc ddb8419a61 Bug 1350437 - Bump image_builder version and hash; r=aki
We recently changed how image compression works (bug 1350447) and
upgraded to Mercurial 4.1.1 (this bug). It's time to roll a new
image_builder Docker image.

This commit updates the version and hash of the image. The image
is already pushed to Docker Hub/Cloud. We just need to whitelist
it and deploy this change.

MozReview-Commit-ID: KQwJZ2OSGlt

--HG--
extra : rebase_source : 23f2686cd85256178b5d89c452aaeabe4e4198db
2017-03-29 09:32:46 -07:00
Gregory Szorc 2e80374019 Bug 1350447 - Use --no-install-recommends in image_builder; r=dustin
Using --no-install-recommends prevents installation of unwanted
packages and helps reduce image bloat. Using it in image_builder
reduces the image size from ~212.5 MB to ~203.6 MB. Not the
biggest savings. But savings nonetheless.

I kept python-pip separate because using --no-install-recommends with
it fails to pull in setuptools, gcc, and other packages required for
building Python packages. Since these packages are only needed
for generating the Docker image, I didn't feel like teasing out
the actual dependencies. It takes a little longer to install
temporary packages and build the image. But the end result should
mostly be the same.

MozReview-Commit-ID: EVURGKFuWzb

--HG--
extra : rebase_source : e1f953079480c6d898569dc7e14dc97890d4f41e
2017-03-28 16:49:43 -07:00