The run-wizard binary (used by interactive workers) will likely need to
change relatively frequently. Therefore, it should be baked directly into
the docker image. This patch instead downloads it from the appropriate
commit on hg.mozilla.org, only when needed.
MozReview-Commit-ID: 70hlloywCSj
--HG--
rename : testing/docker/desktop-test/bin/run-wizard => taskcluster/scripts/tester/run-wizard
extra : rebase_source : 871c24b2eec26962e88c852b5ec85a09382f21a1
To make things as easy as possible, run a little wizard to help developers
choose what to do. This way they don't need to memorize any commands or read
any wiki pages.
MozReview-Commit-ID: DzBlVUs9R8I
--HG--
extra : rebase_source : 36166f7642f6fb297adedf4176f1088cb91c2435
This creates some defaults, enables common built-in extensions and sets up
Ubuntu's CA file for checking host certificates.
MozReview-Commit-ID: DzBlVUs9R8I
--HG--
extra : rebase_source : 81cb5b935910091a4d6632daac439e786c6c410f
We'll need to add a number of dot-files and binaries to /home/worker/bin as
part of the effort to make debugging on remote machines easier, move them all
to a 'dot-files' subfolder and +x everything in /home/worker/bin.
MozReview-Commit-ID: DzBlVUs9R8I
--HG--
rename : testing/docker/desktop-test/dot-config/pip/pip.conf => testing/docker/desktop-test/dot-files/config/pip/pip.conf
rename : testing/docker/desktop-test/dot-config/user-dirs.dirs => testing/docker/desktop-test/dot-files/config/user-dirs.dirs
rename : testing/docker/desktop-test/dot-config/user-dirs.locale => testing/docker/desktop-test/dot-files/config/user-dirs.locale
rename : testing/docker/desktop-test/dot-pulse/default.pa => testing/docker/desktop-test/dot-files/pulse/default.pa
extra : rebase_source : 71b44dc318516a7a03d16fcfb1b36ba6cd924d55
This adds flake8 dependencies. Note that ubuntu 16.04 repos include pip > 8.0
which has peep merged into it, so there's no need to install peep separately.
I also ran into a locale issue which was causing a UnicodeDecodeError anytime
python tried to print a unicode character. The "locale-gen/dpkg-reconfigure locales"
fix the problem.
MozReview-Commit-ID: DQhYV6Emklw
--HG--
extra : transplant_source : %B8%EAh%CE%81%EF%95%1D%D5%B4%F5%AE%02V%20%7Em%83.%EB
This adds flake8 dependencies. Note that ubuntu 16.04 repos include pip > 8.0
which has peep merged into it, so there's no need to install peep separately.
I also ran into a locale issue which was causing a UnicodeDecodeError anytime
python tried to print a unicode character. The "locale-gen/dpkg-reconfigure locales"
fix the problem.
MozReview-Commit-ID: DQhYV6Emklw
--HG--
extra : rebase_source : ffefb07a17a43423142b3417628b6dd475d5c54a
The ES job uses an image based on the official node image. While this was convenient
for eslint, it is a bit less convenient for other things. I want to use this image
for all lint jobs, and switching the base to a generic ubuntu image seems a bit cleaner.
I chose 16.04 for no good reason other than it is the most recent, and we might as well.
Node v4.4.5 and taskcluster-vcs have been uploaded to tooltool.
MozReview-Commit-ID: GngYeH98zO1
--HG--
extra : rebase_source : 3c9b8264e159c601e1a3edad08d989272691751a
So a few changes here:
- node_modules is downloaded using tooltool so that we dont need to rely on external infrastructure.
- We have a npm-shrinkwrap.json file that version locks all of our node packages.
- eslint, eslint-plugin-mozilla etc. are now all installed locally.
In reality this means that we don't hit the network and we don't force users into installing global packages.
./mach eslint --setup has also been improved. We install packages locally and display the path of the user's eslint binary (useful for configuring editors).
eslint-plugin-mozilla has been moved from testing/eslint-plugin-mozilla to /testing/eslint/eslint-plugin-mozilla.
The node_modules directory for eslint and other plugins is located in testing/eslint/.
MozReview-Commit-ID: 4SFSxzka6BS
--HG--
rename : testing/eslint-plugin-mozilla/LICENSE => testing/eslint/eslint-plugin-mozilla/LICENSE
rename : testing/eslint-plugin-mozilla/docs/balanced-listeners.rst => testing/eslint/eslint-plugin-mozilla/docs/balanced-listeners.rst
rename : testing/eslint-plugin-mozilla/docs/import-browserjs-globals.rst => testing/eslint/eslint-plugin-mozilla/docs/import-browserjs-globals.rst
rename : testing/eslint-plugin-mozilla/docs/import-globals.rst => testing/eslint/eslint-plugin-mozilla/docs/import-globals.rst
rename : testing/eslint-plugin-mozilla/docs/import-headjs-globals.rst => testing/eslint/eslint-plugin-mozilla/docs/import-headjs-globals.rst
rename : testing/eslint-plugin-mozilla/docs/index.rst => testing/eslint/eslint-plugin-mozilla/docs/index.rst
rename : testing/eslint-plugin-mozilla/docs/mark-test-function-used.rst => testing/eslint/eslint-plugin-mozilla/docs/mark-test-function-used.rst
rename : testing/eslint-plugin-mozilla/docs/no-aArgs.rst => testing/eslint/eslint-plugin-mozilla/docs/no-aArgs.rst
rename : testing/eslint-plugin-mozilla/docs/no-cpows-in-tests.rst => testing/eslint/eslint-plugin-mozilla/docs/no-cpows-in-tests.rst
rename : testing/eslint-plugin-mozilla/docs/reject-importGlobalProperties.rst => testing/eslint/eslint-plugin-mozilla/docs/reject-importGlobalProperties.rst
rename : testing/eslint-plugin-mozilla/docs/var-only-at-top-level.rst => testing/eslint/eslint-plugin-mozilla/docs/var-only-at-top-level.rst
rename : testing/eslint-plugin-mozilla/lib/globals.js => testing/eslint/eslint-plugin-mozilla/lib/globals.js
rename : testing/eslint-plugin-mozilla/lib/helpers.js => testing/eslint/eslint-plugin-mozilla/lib/helpers.js
rename : testing/eslint-plugin-mozilla/lib/index.js => testing/eslint/eslint-plugin-mozilla/lib/index.js
rename : testing/eslint-plugin-mozilla/lib/processors/xbl-bindings.js => testing/eslint/eslint-plugin-mozilla/lib/processors/xbl-bindings.js
rename : testing/eslint-plugin-mozilla/lib/rules/.eslintrc => testing/eslint/eslint-plugin-mozilla/lib/rules/.eslintrc
rename : testing/eslint-plugin-mozilla/lib/rules/balanced-listeners.js => testing/eslint/eslint-plugin-mozilla/lib/rules/balanced-listeners.js
rename : testing/eslint-plugin-mozilla/lib/rules/import-browserjs-globals.js => testing/eslint/eslint-plugin-mozilla/lib/rules/import-browserjs-globals.js
rename : testing/eslint-plugin-mozilla/lib/rules/import-globals.js => testing/eslint/eslint-plugin-mozilla/lib/rules/import-globals.js
rename : testing/eslint-plugin-mozilla/lib/rules/import-headjs-globals.js => testing/eslint/eslint-plugin-mozilla/lib/rules/import-headjs-globals.js
rename : testing/eslint-plugin-mozilla/lib/rules/mark-test-function-used.js => testing/eslint/eslint-plugin-mozilla/lib/rules/mark-test-function-used.js
rename : testing/eslint-plugin-mozilla/lib/rules/no-aArgs.js => testing/eslint/eslint-plugin-mozilla/lib/rules/no-aArgs.js
rename : testing/eslint-plugin-mozilla/lib/rules/no-cpows-in-tests.js => testing/eslint/eslint-plugin-mozilla/lib/rules/no-cpows-in-tests.js
rename : testing/eslint-plugin-mozilla/lib/rules/reject-importGlobalProperties.js => testing/eslint/eslint-plugin-mozilla/lib/rules/reject-importGlobalProperties.js
rename : testing/eslint-plugin-mozilla/lib/rules/var-only-at-top-level.js => testing/eslint/eslint-plugin-mozilla/lib/rules/var-only-at-top-level.js
rename : testing/eslint-plugin-mozilla/moz.build => testing/eslint/eslint-plugin-mozilla/moz.build
rename : testing/eslint-plugin-mozilla/package.json => testing/eslint/eslint-plugin-mozilla/package.json
extra : rebase_source : cf689f6cc170b9a22018c981a768f545f952e019
When cloning from mercurial the host fingerprint should be validated to the
currently known good fingerprint. This needs to be stored in a commit
independent way so that rerunning tasks in the future do not fail if
the mercurial server's fingerprint is different at that time.
MozReview-Commit-ID: GTermkwGgdb
--HG--
extra : rebase_source : 12bfaed59ac56a6cf81d7a738764a13161927c91
- Move to quay.io/rust builder base.
- Set stable channel to work around compatibility checks with upstream
rust-std builds.
- Updates for stable rust changes.
- Rough repack script for packaging upstream builds for tooltool.
Merge changes from https://github.com/rillian/rust-build tag v0.2.1.
MozReview-Commit-ID: 4rcrUCg2CSw
--HG--
extra : rebase_source : 9e371bf2e28ed903b9b9534b247f2b80d7c44eec
marionette-harness is implemented as a "generic" task and
can be triggered with the following try syntax:
`-p linux64_tc -j marionette-harness -u none -t none`
The Marionette harness tests do not depend on a browser build,
they only exercise Python code.
Add option to testing/docker/desktop-build/bin/build.sh to
execute any in-tree script instead of only `build-linux.sh`.
This feature is used to call
testing/taskcluster/scripts/tester/harness-test-linux.sh, which
in turn executes the mozharness script specified in the environment.
MozReview-Commit-ID: H08v8ow4p8q
--HG--
extra : rebase_source : 0b8caf4c149a7446591808381fc9819ed795bbd5
extra : histedit_source : 191251f01aeee1e683f14d35439aed5eff55c20d
This container formerly defined a special Gradle project for fetching
dependencies. This patch lays the ground-work to use the in-tree
Gradle project instead. Using the in-tree project looks like first
starting a local Nexus repository to collect downloaded dependencies
(before.sh); then running a build which populates that repository; and
then packaging up the downloaded dependencies (after.sh). The patch
after this will define the build which populates the repository.
Sadly there's no easy way to *inherit* from desktop-build, so this is
a copy-paste-modify clone.
MozReview-Commit-ID: Dd5Hj8hkJVk
--HG--
extra : rebase_source : dcfe245b23eb28e99b1506eebe053142c9e242b3
extra : histedit_source : f21014636de958c5ddf27ca2a1eb156e3c88bd78