Update the gecko-rust-build docker container to upload the
constructed toolchain to tooltool when running on taskcluster,
so it can be used in normal gecko builds (buildbot as well as tc)
Also include a mac build script (which can't run in taskcluster
currently) and a python script for launching the build task from
a local checkout. This is based on Ted's script for building
breakpad's minidump_stackwalk utility.
Matches contents of https://github.com/rillian/rust-build
commit 407c6854e91541341508e96e6a2781434535b7a5
tag v0.2.0
We can't run Docker-in-Docker, so this is a clone of
https://hub.docker.com/r/sonatype/nexus, modified to run additional
commands. Sonatype Nexus officially supports the Oracle JDK but the
OpenJDK appears to work as well, so we use it.
This bakes a build.sh and Gradle-specific dependencies into the docker
image. This makes sense in a future where the dependencies this
fetches are baked into the image used to build Fennec. It makes less
sense right now, when the dependencies are uploaded to tooltool and
subsequently consumed. It's not critical that we get this right
immediately.
The actual build.sh script runs the Gradle wrapper for a special
dependency project. The wrapper installs Gradle itself, downloads a
large number of Gradle dependencies, and uses Jake Wharton's
https://github.com/JakeWharton/sdk-manager-plugin/ to download and
install the Android SDK. (We could use |mach bootstrap|, but that
doesn't (yet) support non-interactive use, and I want to try to use
the SDK Manager more generally.) These outputs are then packaged for
further use: right now, they're exposed as artifacts, but eventually
we'll upload them directly to tooltool.
MozReview-Commit-ID: 7upsk1ANuxN
--HG--
rename : testing/docker/desktop-build/Dockerfile => testing/docker/android-gradle-build/Dockerfile
extra : source : 123c802d928a9a02040cc3316988d9b59db0ea45
On a CLOSED TREE.
Backed out changeset 2b079941a33c (bug 1247170)
Backed out changeset 123c802d928a (bug 1247170)
MozReview-Commit-ID: Bt504gHC8iP
--HG--
extra : rebase_source : 806755099be27b0b14ecdc9bda8957b04a36bd4f
We can't run Docker-in-Docker, so this is a clone of
https://hub.docker.com/r/sonatype/nexus, modified to run additional
commands. Sonatype Nexus officially supports the Oracle JDK but the
OpenJDK appears to work as well, so we use it.
This bakes a build.sh and Gradle-specific dependencies into the docker
image. This makes sense in a future where the dependencies this
fetches are baked into the image used to build Fennec. It makes less
sense right now, when the dependencies are uploaded to tooltool and
subsequently consumed. It's not critical that we get this right
immediately.
The actual build.sh script runs the Gradle wrapper for a special
dependency project. The wrapper installs Gradle itself, downloads a
large number of Gradle dependencies, and uses Jake Wharton's
https://github.com/JakeWharton/sdk-manager-plugin/ to download and
install the Android SDK. (We could use |mach bootstrap|, but that
doesn't (yet) support non-interactive use, and I want to try to use
the SDK Manager more generally.) These outputs are then packaged for
further use: right now, they're exposed as artifacts, but eventually
we'll upload them directly to tooltool.
MozReview-Commit-ID: 7upsk1ANuxN
--HG--
rename : testing/docker/desktop-build/Dockerfile => testing/docker/android-gradle-build/Dockerfile
extra : rebase_source : 816a220579f8cd04699e95cfd1f77b046474d717
extra : histedit_source : 715f17c6eb43084adf88f823d59af80d12a68958
Note that this does not build their predecessors (ubuntu1204-test-upd and
centos6-build-upd) -- those still come from docker hub.
--HG--
extra : commitid : GIdKsOcvAXp
extra : rebase_source : 28490b1ba969cdf7371d11827f97e9f68f5f1eee
extra : amend_source : 87d006a6e144501bd10262cd17939d308c7320ea
In bug 1239301 we noticed that the fonts on the releng Linux hosts versus the
docker image were slightly different and caused some test failures.
The difference is that on the releng hosts we have anti-aliasing disabled and
many tests (reftests mainly) had adapted for this configuration, hence, failing if enabled.
In this bug we're going to disable anti-aliasing for the desktop-test image in
order to pass the tests.
See the difference between the two pushes:
https://treeherder.mozilla.org/#/jobs?repo=try&group_state=expanded&revision=3c9a54d68c95,1d3078c86e52
We went from failing over 200 tests across jobs to less than 10-20 tests in total.
In the future we will have to consider if we want to fix this configuration.
--HG--
extra : commitid : Djh8hA8k5z8
extra : rebase_source : ea87290dea9a20bd5f78ff1061ab2e3d50dfdef5
Adds a new lint docker image for linting tools and adds an eslint-gecko task
that uses it to run eslint over the tree.
--HG--
extra : rebase_source : 6e3584ae9ec05ca1c45270f312d96cd026550e17
This change disables reporting of crashes of Ubuntu apps.
This is important to fix as it takes away the focus from running tests and make them time out.
This only applies to TaskCluster Linux64 debug test jobs which are running as tier-2.
--HG--
extra : commitid : 3gt0OcRi9Fm
extra : rebase_source : a769c0dca123ecffb615793b33f115227687a845
extra : amend_source : 77ebc0a49e01c6bf92f2286048dd2d2f54deaf6a
On the Buildbot side (bug 1220658) we upgraded to mesa-lts-saucy-9.2.1 and that caused a lot of
test failures accross the board.
In this change we're reverting upgrading to that version and going back to where we were.
--HG--
extra : commitid : KOsFpMsYfLJ
extra : rebase_source : 20c6c7f7eb1f14d256be597c25e8ac3431e7ecfb
This avoids taking away focus from tests.
--HG--
extra : commitid : 69JXpfyaTMD
extra : rebase_source : 66480764127f3e311f98a0aaafc77a8fd31582fa
extra : histedit_source : 4edf37394446e274bc6eb1556d81c66f28e9ff75%2C0b8ab6b63757c646650349ec78b094e8fba30874
Also calls `dpkg-reconfigure locales`, but it's not entirely clear if this is
necessary or not.
--HG--
extra : commitid : 4jWDfNVFuD0
extra : rebase_source : 926488fe6f619c9c8ae361925256fe069638e51c
We don't run free commands from tasks, we now allow only scripts shipped
in the phone-builder image.
We also added support to an allowed whitelist of github and bitbucket
users to run tasks from their respective private repositories.
--HG--
extra : commitid : 6NA1M4JKjCQ
This generally makes the approach look more like that for desktop-build. The
major difference is that `bin/test.sh` takes arguments which are passed on to
the mzoharness script (MOZHARNESS_SCRIPT) with the addition of config
arguments (MOZHARNESS_CONFIG)
--HG--
rename : testing/docker/desktop-build/bin/build.sh => testing/docker/desktop-test/bin/test.sh
rename : testing/docker/desktop-test/mozharness_configs/remove_executables.py => testing/mozharness/remove_executables.py
extra : commitid : GyMeTBpCwm8
extra : rebase_source : 1a61f9bc32066ad6f9fce504d3e8ac67e39b105d
This also refactors the image generation to not depend on puppetagain, and to
install the latest and greatest mercurial in a verified, repeatable way.
As with centos6-build-upd, the ubuntu1204-test-upd image exists to run
'apt-get upgrade' periodically without regenerating the huge parent image.
--HG--
extra : commitid : HxYSFfIaEc
extra : rebase_source : 28dae0a30be3d6fae2c44a43601bbd336d9bbfdd
Add new tasks for the "Linux" platform. These run on the same docker image as
the Linux64 builds, but that image has been modified to contain a bunch of
*.i686 packages required to cross-compile for i686. Due to yum's propensity
for resolving dependencies without regard to architecture, with this patch the
system-setup.sh script lists both architectures of each file explicitly.
This also leaves `gcc` installed for user convenience in installing Python
extensions, NPM modules, etc.
This also includes 'subversion' for clang builds (bug 1208029)
--HG--
extra : commitid : GfCTCchyHo6
extra : rebase_source : 8b15da0ed7adefa084b7195a98f63f73564a3d94
This also bumps the image's VERSION since I had pushed several different
images as 0.0.1
--HG--
extra : commitid : LespqENOhs5
extra : rebase_source : b2072b1a9131ea86c080a6abc2898252fc7ff159
extra : histedit_source : 5fca32220264fe07afe0c94e226cee342f1dace4
Introduces a centos6-builder image and refactors desktop-build to use it.
(64-bit only)
--HG--
extra : commitid : BMO91NqNEEh
extra : rebase_source : 85a32f4f88f7d52b86b25516022c44e78b110fd2
This requires doing some cleanup of permissions on the cache mounts first;
eventually, this should be done by the docker-worker.
--HG--
extra : commitid : 6pnyoQeGrRX
extra : rebase_source : caa1dc4df3f0fc9ab26a55088749d85f5a52145a
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.
--HG--
rename : testing/docker/desktop-build/configs/disable_signing.py => testing/mozharness/configs/disable_signing.py
rename : testing/docker/desktop-build/configs/platform_supports_post_upload_to_latest.py => testing/mozharness/configs/platform_supports_post_upload_to_latest.py
extra : commitid : 8FSj0uwFfbE
extra : rebase_source : 949bb94ca58324444981b81e9e9640ab00d63196
extra : amend_source : 40152e06e587728500800de02a437389038fe6ea
extra : source : e3c15b9f89b3c331805b4f1a83f62805f32bbb9a
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.
--HG--
rename : testing/docker/desktop-build/configs/disable_signing.py => testing/mozharness/configs/disable_signing.py
rename : testing/docker/desktop-build/configs/platform_supports_post_upload_to_latest.py => testing/mozharness/configs/platform_supports_post_upload_to_latest.py
extra : commitid : LUhLDQkhme1
extra : rebase_source : c4cc73de99939e22dd1317ce2d9b26671b67947a
This is to force volume cache to redownload the image valid socorro
token.
--HG--
extra : commitid : AXTK6ZO3Rro
extra : rebase_source : a3ab06d5a07cc16c90f3c875084f5c5e386cf1a3