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

416 Коммитов

Автор SHA1 Сообщение Дата
Andrew Halberstadt 6bd4aab95e Bug 1258341 - Rewrite eslint taskcluster task to use |mach lint| instead of |mach eslint|, r=smacleod
This also renames the tasks:

    eslint-gecko -> mozlint-eslint
    flake8-gecko -> mozlint-flake8

MozReview-Commit-ID: KYhC6SEySC3

--HG--
rename : taskcluster/ci/legacy/tasks/tests/eslint-gecko.yml => taskcluster/ci/legacy/tasks/tests/mozlint-eslint.yml
extra : rebase_source : 3f3b4d0226bf014d49ade2eb56b67ce62197e179
2016-08-25 10:00:51 -04:00
Rob Thijssen 59551f9c69 Bug 1298371; Use scm level-appropriate windows workertype; r=pmoore
MozReview-Commit-ID: rWTlmSiO4E

--HG--
extra : rebase_source : 35f5ec015a0f7c329f309c70b134162d4fa7152a
2016-08-30 11:15:07 +01:00
Henrik Skupin 0f39ba4b58 Bug 1296614 - Firefox-ui-functional tests should be also run for ASAN builds r=dustin
MozReview-Commit-ID: A4EILsuV5qH

--HG--
extra : rebase_source : afb96cbe712c2912f5f07801cc6c1c5bcda1f58b
2016-08-22 13:47:17 +02:00
Gregory Szorc e1f9b3132b Bug 1298455 - Tag and use decision image 0.1.5; r=dustin
MozReview-Commit-ID: Fmc4l70onV2

--HG--
extra : rebase_source : 08a34e48faa44a25a52273a35b835c71ef178c15
2016-08-26 11:10:30 -07:00
Gregory Szorc a8698fd734 Bug 1297817 - Add TaskCluster automation for stylo and stylo-try repos; r=dustin
stylo inherits the defaults, basically.

stylo-try is a copy of try's config minus some builds we don't care about.

MozReview-Commit-ID: GalvxMwh8rv

--HG--
rename : taskcluster/ci/legacy/tasks/branches/try/job_flags.yml => taskcluster/ci/legacy/tasks/branches/stylo-try/job_flags.yml
extra : rebase_source : dbbf4b1e82b9a09eff5f0fdae7535f8317bc42bc
2016-08-24 13:57:16 -07:00
Wes Kocher 50954c6f31 Merge m-c to autoland, a=merge 2016-08-25 17:15:05 -07:00
Maja Frydrychowicz ac14e485b1 Bug 1284874 - Run Marionette tests for Fennec on Android 4.3 API15+ debug in TaskCluster, tier 3; r=dustin,gbrown
MozReview-Commit-ID: 8pCTlceA8o0

--HG--
extra : rebase_source : 200a42a75675ff54d81890df181e96f7eddd7156
2016-08-19 15:14:19 -04:00
Kim Moir 2e15a539b5 Bug 1296088 - -p all -u all[x64] try syntax no longer triggers Linux asan tests r=aselagea DONTBUILD 2016-08-25 09:38:02 -04:00
Phil Ringnalda f35f0c69e0 Merge m-c to a CLOSED TREE f-t 2016-08-23 22:59:10 -07:00
Matthew Noorenberghe a59bf6717f Bug 1270926 - Support ESLint on XHTML files. r=ahal
MozReview-Commit-ID: 4iYODbZQiB9
2016-08-23 14:42:21 -07:00
Ryan VanderMeulen 833833b8c5 Merge inbound to m-c. a=merge 2016-08-22 09:40:41 -04:00
Wes Kocher 35eb253b0d Merge m-c to autoland, a=merge 2016-08-19 18:40:39 -07:00
Andrew Comminos 872a12b7ad Bug 1296733 - Disable layers acceleration for WebGL mochitests on Linux. r=jrmuizel
MozReview-Commit-ID: 3azrKSkz3ET

--HG--
extra : rebase_source : 6e8fe6f364820be94cfcd2337d2c734bc3f4a425
2016-08-19 15:54:45 -04:00
Ryan VanderMeulen ce55e7b71a Merge m-c to inbound. a=merge 2016-08-19 09:59:49 -04:00
Kim Moir a92f03d013 Bug 1293730 - Fennec x86 builds as tier 1 r=jlund 2016-08-19 09:09:31 -04:00
Gregory Szorc fb9d600ab0 Backed out changeset e6e5569551be (bug 1263815) for valgrind failures because Docker image generation isn't deterministic 2016-08-18 15:50:28 -07:00
Andrew Comminos fea29878bb Bug 1296086 - Add property to TaskCluster to allow software GL layers. r=jmaher
MozReview-Commit-ID: 7FFN6UbOFZY

--HG--
extra : rebase_source : 7a45c0b890e982f33a7deac69611eb4438ea18d4
2016-08-17 17:24:56 -04:00
Wes Kocher d6405029ef Backed out 2 changesets (bug 1295380) because it needs treeherder changes deployed before it can land a=backouty
Backed out changeset 905fb4a53386 (bug 1295380)
Backed out changeset 213a4986ccfd (bug 1295380)
2016-08-18 15:03:55 -07:00
Andrew Comminos 6c78c89f37 Bug 1281241 followup - Use legacy taskcluster instances for XPCShell and ASAN devtools. r=philor 2016-08-18 01:09:47 -04:00
Wes Kocher 66098b3d43 Merge m-c to autoland, a=merge 2016-08-17 17:25:57 -07:00
Wes Kocher 07f8858bf6 Merge inbound to central, a=merge 2016-08-17 16:38:41 -07:00
Andrew Comminos 1fbf3dafb5 Bug 1281241 - Use large desktop-test instances by default on TaskCluster. r=jmaher
MozReview-Commit-ID: 4SntPKPoJOS

--HG--
extra : rebase_source : 6140d1609572083476b9fee44cde1479b6c239af
2016-08-17 17:24:08 -04:00
Andrew Halberstadt 66ee5d6243 Bug 1295962 - Remove 'tc' groupSymbol for tasks on the 'lint opt' platform, r=garndt
MozReview-Commit-ID: KQm0ZEEKUxw

--HG--
extra : rebase_source : 30434f8a4fbd8da706c7698ba3a2f8287749e1d0
2016-08-17 09:48:50 -04:00
Geoff Brown a7f164c330 Bug 1204281 - Adjust chunks and maxRunTime to avoid tc Android mochitest-media and xpcshell timeouts; r=me 2016-08-16 14:56:48 -06:00
Geoff Brown 001ef29f8f Bug 1295225 - Allow regex in taskcluster by-test-platform; r=dustin 2016-08-16 14:56:46 -06:00
Geoff Brown defab7007f Bug 1274578 - Do not use alias when specific try -u test requested; r=dustin 2016-08-16 14:56:45 -06:00
aselagea 3f3894ef5c Bug 1290989 - Chunk m-gl on Desktop r=kmoir 2016-08-16 10:33:54 -04:00
Geoff Brown b3de7bb2f6 Bug 1295186 - Consolidate TC test tier transforms; r=dustin 2016-08-15 18:49:02 -06:00
Wes Kocher 2253eb9510 Merge m-c to inbound, a=merge 2016-08-15 14:53:49 -07:00
Gregory Szorc 5e326fbca7 Backed out changeset 25bc6ca8f19f (bug 1294234) for breaking TC tests
Introduced a (possibly intermittent) permissions failure downloading
mozharness. Might be cache related.
2016-08-12 21:23:41 -07:00
Gregory Szorc d8a853a72c Bug 1294234 - Use run-task for test tasks; r=dustin
Before, test.sh (duplicated between the desktop-test and
desktop1604-test images) was dropping permissions, creating a workspace,
and executing test-linux.sh. This is functionality now provided by
run-task.

So, convert the test tasks to use run-task.

One thing run-task isn't doing is created the workspace. So this
functionality has been moved into test-ubuntu1204.sh and
test-ubuntu1604.sh.

Since the test.sh files are no longer used after this change, they have
been deleted. The desktop-test image no longer has any files in the
bin/ directory, so the Dockerfile entry to copy those files has been
removed.

MozReview-Commit-ID: 1BiskrMs6xW

--HG--
extra : rebase_source : 264efc9b30e62927dece848b9b1eab7542cf2cba
extra : source : 8335aa40265b1d17421d06d9e9a180eb8419fe47
extra : histedit_source : a5ae54a810718d446ded8bab510e6cd605562737
2016-08-09 14:34:58 -07:00
Gregory Szorc 755f4ce8db Bug 1294234 - Assign command at end of function; r=dustin
Previously, the code performed a "hidden" assignment to
worker['command'] when creating the "command" variable. This
tripped me up when reading the code because relying on variable
references isn't exactly obvious.

We now defer the assignment to worker['command'] until the end,
making the code a little easier to understand.

MozReview-Commit-ID: 23qH4Z3RKY4

--HG--
extra : rebase_source : 52605d7091c73fc47da753bbb298b242f7a3a2ae
extra : histedit_source : 78eb25f963c940956c65fefb2509669a59f78160
2016-08-09 13:20:05 -07:00
Wes Kocher e9097643d5 Merge inbound to central, a=merge 2016-08-12 13:44:29 -07:00
Joel Maher 01ecd698f2 Bug 1291657 - run web-platform-tests for linux64 in ubuntu 16.04 vs ubuntu 12.04. r=gps 2016-08-15 16:27:41 -04:00
Gregory Arndt fa4f868ca7 Bug 1263815 - retry xvfb startup. r=dustin
Sometimes xvfb will not start up with the current retry/delay settings. This will
attempt to retry more and delay for longer to ensure xvfb has started up. Common
pieces of this have been factored out into a recipe that all docker images can schare
that need this functionality.

MozReview-Commit-ID: BTXkJkBWLZX

--HG--
extra : rebase_source : 7554d7784768a65deb2c9ccb89586e5f77550e9f
2016-07-06 09:06:58 -05:00
Steve Fink 4d120fc7a9 Bug 1288596 - Promote SM(asan msan) to tier 1, r=garndt
MozReview-Commit-ID: 6f9SdedaoH1

--HG--
extra : rebase_source : 1c55f187ba615d6083ba19eba44c2c0646f94eac
2016-08-03 16:42:48 -07:00
Kim Moir 904d639196 Bug 1282468 - disable buildbot asan builds and tests on trunk r=gbrown 2016-08-10 10:26:58 -04:00
Carsten "Tomcat" Book 553a2da922 merge mozilla-inbound to mozilla-central a=merge 2016-08-10 15:54:26 +02:00
Dustin J. Mitchell ef45e28781 Backed out changeset ea0953a122a2 (bug 1291473)
MozReview-Commit-ID: G6NTiXnbvxf

--HG--
extra : rebase_source : 7644ab79b8d7344a4dadf772ec994289b00d6f27
2016-08-09 15:43:28 +00:00
Carsten "Tomcat" Book c4b39a49eb Merge mozilla-central to mozilla-inbound 2016-08-09 15:47:44 +02:00
Carsten "Tomcat" Book d9e0b4c565 merge mozilla-inbound to mozilla-central a=merge 2016-08-09 15:44:51 +02:00
Kim Moir f906e9a8e1 Bug 1283879 - ASan builds shouldn't try to download symbols (since they don't produce symbols zips) r=dustin 2016-08-09 09:19:55 -04:00
Gregory Szorc 13a147d87a Bug 1290282 - Add build type to cache name; r=jonasfj
Without this, "debug" and "opt" builds share the same cache. This
causes builds to randomly fail in automation.

MozReview-Commit-ID: Fend6GGmhFk

--HG--
extra : rebase_source : c3370938364b1e2cc94081d58ba9f35ce1060e5d
2016-08-08 16:27:50 -07:00
Dustin J. Mitchell 6d7445298d Bug 1293397: run taskgraph-tests when things change; r=gps
This fixes the use of the bogus pattern `taskcluster/**.py` which does not
actually match python files in subdirectories.

MozReview-Commit-ID: 3UqM5UQ0HOE

--HG--
extra : rebase_source : 73eec18034a11256273589b69b6d95aabceecd03
2016-08-08 21:25:23 +00:00
Gregory Szorc a00feedd9f Backed out changeset fc1ed3fd8584 (bug 1291473) on suspicion of breaking decision tasks 2016-08-08 13:15:37 -07:00
Gregory Szorc 95caf4dde4 Bug 1290282 - Switch to 16 vCPU instances for build tasks; r=dustin
We've created a new worker type based on c4.4xlarge and m4.4xlarge
instances to replace the existing worker types based on c3.2xlarge,
m3.2xlarge, and r3.2xlarge. The new worker type has 16 vCPU instead
of 8, which makes build tasks complete ~10 minutes faster.

We've also consolidated down into a single pool for workers.

MozReview-Commit-ID: sOfKspFjCS

--HG--
extra : rebase_source : 8c7b030e0d9376dd9c07b71b8987be0c300fb691
2016-08-08 12:38:19 -07:00
Dustin J. Mitchell 0027ea52f4 Bug 1291473: put l10n artifacts in the same place as other builds; r=Callek
Also add jobKind: build

MozReview-Commit-ID: 1Z0L8twJJC5

--HG--
extra : rebase_source : 69636edaebff086aaca49b4843c3d73a4ca0bdcc
2016-08-02 22:10:42 +00:00
Dustin J. Mitchell f7a9bbac26 Bug 1293733: accept pushdate from command line; r=garndt
MozReview-Commit-ID: BrGiowlMVCa

--HG--
extra : rebase_source : e47b9e18b9dbc9e617f9bad165318a74c4e96e36
extra : source : fc1ed3fd8584161ae4693bd1c956e8254368b6bc
2016-07-13 18:50:50 +00:00
Gregory Szorc 30ea94481e Bug 1293717 - Include {{build_name}} in workspace cache; r=dustin
This was recently refactored (incorrectly) in 147b245de122
(bug 1290282). Before that refactor, we only defined {{build_name}}
in base_linux64.yml. After, we hard-coded "linux32" and "linux64."
The change to linux64 resulted in ASAN builds sharing the same cache
name. Derp.

This commit restores {{build_name}} to the cache path. And for
consistency, we use {{build_name}} on both 32 and 64-bit variants.

MozReview-Commit-ID: KhqIjzARETO

--HG--
extra : rebase_source : 6b110302b66e052ec3d79bdc5b05a190cb0a7749
2016-08-09 11:00:26 -07:00
Dustin J. Mitchell 05e1597215 Bug 1291473: accept pushdate from command line; r=garndt
MozReview-Commit-ID: BrGiowlMVCa

--HG--
extra : rebase_source : cf257129fcb1f6214949407b6a3956fd9698aa5b
2016-07-13 18:50:50 +00:00
Dustin J. Mitchell 4d9c99009b Bug 1291473: set tier explicitly for SM and Hazard jobs; r=sfink
MozReview-Commit-ID: BKnbx0wsyue

--HG--
extra : rebase_source : 7052b3cd0fba3e28b8f332098969a011265605bf
2016-07-26 19:34:48 +00:00
Dustin J. Mitchell e5153458ba Bug 1291473: move hazard tooltool cache to the usual location; r=sfink
MozReview-Commit-ID: IMi2KNclKb9

--HG--
extra : rebase_source : 8e754faad40c79f141b9f06b4153b99006c0b911
2016-08-02 18:52:08 +00:00
Dustin J. Mitchell 6733881fbd Bug 1291473: set tier explicitly for SM jobs; r=sfink
MozReview-Commit-ID: JfQ53hy8aTs

--HG--
extra : rebase_source : 7588b343ef509c26c8b2880cda385a2019252df6
2016-08-02 18:51:25 +00:00
Dustin J. Mitchell 94b02140ae Bug 1291473: mark valgrind builds explicitly as tier-1; r=kmoir
MozReview-Commit-ID: 3brmQIyjXEj

--HG--
extra : rebase_source : 0bdfdb8f2212ec906bd96a70d817e5e9791f90c0
2016-07-26 18:25:49 +00:00
Dustin J. Mitchell c4a330e3fd Bug 1291473: set tier explicitly for android partner builds; r=Callek
MozReview-Commit-ID: traMeOsxxg

--HG--
extra : rebase_source : e30a4ebf050faec7fb390f2e819d31299ed3dc9a
2016-07-26 17:34:41 +00:00
Dustin J. Mitchell e4ed9f2279 Bug 1291473: set mulet tier explicitly r=gerard-majax
MozReview-Commit-ID: 8TA56XdGFU7

--HG--
extra : rebase_source : 56511fae4500f81216e03850cf912ed94394982d
2016-07-26 14:33:59 +00:00
Dustin J. Mitchell 0252ecf39d Bug 1291473: set TOOLTOOL_CACHE for android-api-15* builds; r=gbrown
MozReview-Commit-ID: 4tPKzZAeUW

--HG--
extra : rebase_source : 3c6f791b5fcbb43b9e83a44a3b7ed22ef6d2656c
2016-07-26 13:28:25 +00:00
Dustin J. Mitchell 24704cfe85 Bug 1291473: set tiers explicitly; r=mshal
MozReview-Commit-ID: IPmiAWw5QEF

--HG--
extra : rebase_source : 709b81479f2702663b8ed808640997290127850b
2016-07-25 21:02:12 +00:00
Dustin J. Mitchell dab2cd3e66 Bug 1291473: set tier for st-an builds; r=Callek
MozReview-Commit-ID: 5jYMWrnepkW

--HG--
extra : rebase_source : 33ac9cd78e5e4d03e863efe4787fd545790fd5d5
2016-07-26 18:04:43 +00:00
Wes Kocher 5e221f11cb Backed out 3 changesets (bug 1294234) for UnicodeDecodeError failures in various tests a=backout CLOSED TREE
Backed out changeset d118ab526ad8 (bug 1294234)
Backed out changeset 3cfc4041d48d (bug 1294234)
Backed out changeset 710d37b610a8 (bug 1294234)
2016-08-11 16:04:48 -07:00
Wes Kocher 45575a7f86 Merge m-c to autoland, a=merge
a=release for the webidl hook for a comment-only change

--HG--
extra : amend_source : e590e515ab273d097f88b35be0e5c999502ebdf4
2016-08-16 22:07:30 -07:00
Ehsan Akhgari 095526c413 Bug 1296758 - Don't upload symbols for Linux static analysis builds; r=dustin 2016-08-20 11:18:04 -04:00
Gregory Szorc e4bcb10295 Backed out changeset 7a3a65ff5865 (bug 1295486) for test failures 2016-08-18 10:21:26 -07:00
Gregory Szorc 43d7d85229 Bug 1295380 - Use run-task for test tasks; r=dustin
Before, test.sh (duplicated between the desktop-test and
desktop1604-test images) was dropping permissions, creating a workspace,
and executing test-linux.sh. This is functionality now provided by
run-task.

So, convert the test tasks to use run-task.

It's worth noting that creating the workspace directory is no longer
necessary because it is defined as a VOLUME in the Dockerfile or a
cache in some task configurations. However, it is default owned by
root:root, so we do need to instruct run-task to chown it.

Since the test.sh files are no longer used after this change, they have
been deleted. The desktop-test image no longer has any files in the
bin/ directory, so the Dockerfile entry to copy those files has been
removed.

MozReview-Commit-ID: 1BiskrMs6xW

--HG--
extra : rebase_source : 4b16837ad9362844668fe4d6cde5ed07a59a3ccd
extra : source : 8335aa40265b1d17421d06d9e9a180eb8419fe47
2016-08-16 09:25:35 -07:00
Gregory Szorc ebb5c961f7 Bug 1295486 - Decode YAML files to UTF-8 at read time; r=dustin
Before, we'd open files and feed bytes to yaml.load(). When a str
is fed to yaml.load(), it attempts to guess the encoding. It defaults
to UTF-8 unless somebody set us up the BOM. This is probably OK.
Except if the file isn't valid UTF-8, the exception will be raised
in the bowels of YAML parsing and it may not be obvious the failure
is due to invalid UTF-8 input versus say Python str/unicode
coercion foo.

We change all call sites that load YAML from a file to use
codecs.open() to open the file in UTF-8 and perform UTF-8
decoding/validation at file read time. This should make any UTF-8
failures more obvious. Furthermore, it reinforces that our YAML files
are UTF-8 and not some other encoding.

I discovered this issue as part of trying to get emoji symbols to
render on Treeherder. Unfortunately, it appears pyyaml detects
many emoji as unprintable characters and refuses to load them. This
makes me sad and makes me want to abandon pyyaml/YAML in favor of
something that supports emoji :P

MozReview-Commit-ID: AOvAruZFfnK

--HG--
extra : rebase_source : 4c5d42cb63da5c9ebfac55ab84b4f7f8bcc648fa
2016-08-18 08:58:59 -07:00
Gregory Arndt d908af3f6a Bug 1263815 - retry xvfb startup. r=dustin
Sometimes xvfb will not start up with the current retry/delay settings.  This will
attempt to retry more and delay for longer to ensure xvfb has started up.  Common
pieces of this have been factored out into a recipe that all docker images can schare
that need this functionality.

MozReview-Commit-ID: 2ww0eT3cIt6

--HG--
extra : rebase_source : f343f8a2bf8370657b63afdd9d739988bbb6261c
2016-07-06 09:06:58 -05:00
Carsten "Tomcat" Book d036bdb09c merge fx-team to mozilla-central a=merge 2016-08-04 15:54:27 +02:00
Wes Kocher 99881f0cb0 Merge m-c to fx-team, a=merge 2016-08-03 16:47:57 -07:00
Nick Alexander 4b68f17715 Bug 1291370 - Add Fennec-and-GeckoView Task Cluster job building using --with-gradle. r=dustin,gbrown
We run only a small subset of the test suite to save resources.  Over
time, we'll run more of the platform test suite.

--HG--
extra : rebase_source : 264fbe55be5b56857278ae8d731ef51b1b41cf3c
extra : histedit_source : a3550c7e2ea8a41cd6285e511b7268a9e7af11cd%2Cec6024dadcb7c071170aa452064776666283bb27
2016-08-03 16:02:00 -07:00
Carsten "Tomcat" Book eeacfbeff0 merge mozilla-inbound to mozilla-central a=merge 2016-08-03 17:03:41 +02:00
Justin Wood 47b16ee23c Bug 1291337 - Export MOZ_AUTOMATION_UPLOAD_SYMBOLS for TC's jobs instead of just setting it. r=dustin
MozReview-Commit-ID: IW04TEogG4O

--HG--
extra : rebase_source : f2ab60bd95a4986416840d02c94b69af6d93dd77
extra : source : b1985f935333a0d5546ce9698b7ebab854542904
2016-08-01 20:14:46 -04:00
Dustin J. Mitchell 5e8cbd7fb2 Bug 1290523: support generic-worker task descriptions; r=pmoore
MozReview-Commit-ID: CHIGSrB1MIu

--HG--
extra : rebase_source : 41e56a996867dde93fd8f5f67411f81200b507b8
2016-07-29 17:50:09 +00:00
Armen Zambrano Gasparnian ff5e584d9d Bug 1279676 - Support --rebuild try flag to schedule tests N times. r=dustin
MozReview-Commit-ID: Lrxi8t53nwy

If a developer adds '--rebuild N' to their try syntax they will get test jobs scheduled N times.
This is useful to determine intermittency rate.

This fixes a regression due to the recent refactoring on how we schedule tasks.

--HG--
extra : rebase_source : 355ca631353015bf63461c194168d753efd6958e
2016-07-28 13:20:44 -04:00
James Graham 0307e1c328 Bug 1291735 - Enable wpt lint on ci, r=ahal
MozReview-Commit-ID: 8o3FDgJ8nB8

--HG--
extra : rebase_source : 48b2669b28b598ab98b754f2b693f40aa4c676da
2016-08-02 17:03:49 +01:00
Carsten "Tomcat" Book 6b13b3cde6 Merge mozilla-central to autoland 2016-08-03 17:08:48 +02:00
Henrik Skupin 867c0f335a Bug 1290192 - Use Ubuntu 16.04 docker image for Firefox UI tests. r=dustin
MozReview-Commit-ID: lcM2yLJg0F

--HG--
extra : rebase_source : 4a5d2672b14f7261dced5373d4e7fc7cef69beca
2016-07-29 10:21:03 +02:00
Gregory Szorc 2377b59bfe Bug 1290611 - Normalize mode of created file in tests; r=dustin
Without this, current umask may influence test results. That was
causing differences between automation and local runs.

MozReview-Commit-ID: 1eu613aBpKB

--HG--
extra : rebase_source : 41c92b9ea795217e715dfa949d3444534aafb7c7
2016-08-02 08:36:19 -07:00
Gregory Szorc 08d735f41f Bug 1291070 - Tag and use decision image 0.1.4; r=dustin
To pull in run-task exit code fix.

MozReview-Commit-ID: 5QvcQijTRKH

--HG--
extra : rebase_source : cac011e2835f18e620293e8c05a8f49da472d925
2016-08-01 18:09:09 -07:00
Gregory Szorc 0f7dc03a9f Bug 1291070 - Return process exit code properly; r=glandium
Before, we were returning None, which gets converted to 0.
Derp.

Also fix a flake8 failure introduced by 9f5fbb3066c9.

We'll also need to generate a new decision image. But that will
require someone with TC privileges to be around. That can be done
in a separate commit to unblock this from landing and fixing
consumers of run-task that aren't the decision image.

MozReview-Commit-ID: 6XuoIxjDozF

--HG--
extra : amend_source : 4a3047d09d9bdce5a173a71ec3c68b8c4579a910
2016-08-01 21:44:22 -07:00
Iris Hsiao 923cbf5038 Backed out changeset 51f838971d62 (bug 1291070) for Taskgraph test failure 2016-08-02 17:24:25 +08:00
Alexandre Lissy 7a97623568 Bug 1290685 - Update TaskCluster to use github.com for B2G r=garndt
MozReview-Commit-ID: EmLzh977XWi

--HG--
extra : rebase_source : 9ef54a5cb83f722bfc5fecee2c2c98e9eea45231
2016-07-31 00:03:51 +02:00
Iris Hsiao 095be1ae13 Backed out changeset 3ebad6b5ce57 (bug 1290685) per developer's request 2016-08-02 14:39:10 +08:00
Gregory Szorc e4c0cab07e Bug 1291070 - Return process exit code properly; r=glandium
Before, we were returning None, which gets converted to 0.
Derp.

Also fix a flake8 failure introduced by 9f5fbb3066c9.

We'll also need to generate a new decision image. But that will
require someone with TC privileges to be around. That can be done
in a separate commit to unblock this from landing and fixing
consumers of run-task that aren't the decision image.

MozReview-Commit-ID: 6XuoIxjDozF

--HG--
extra : rebase_source : 836f4996cb9be24e19504f73792b159f0ffbdbee
2016-08-01 21:44:22 -07:00
Armen Zambrano Gasparnian 6415eb5945 Bug 1288742 - Increase expiration date of all gecko decision artifacts bar image context tar balls. r=dustin
Until now Gecko decision task artifacts would expire after a week. Unfortunately, some of these artifacts are
needed in order for Treeherder to determine which tasks it can schedule on a given push.

In this change, we're changing the expiration of all artifacts except those that are related to docker image
optimizations, which, are very large files and we only want to keep for a week.

MozReview-Commit-ID: 96ahyWmoI7W

--HG--
extra : rebase_source : d0f4d65e3b5bfae832a5aaed60c0dfd58f0bdc62
2016-07-27 10:51:38 -04:00
Gregory Szorc f434988215 Bug 1291035 - Increase HTTP connection pool capacity; r=dustin
I was looking at some decision task logs and noticed lines like:

  Connection pool is full, discarding connection: taskcluster

I also noticed lines like:

  Starting new HTTP connection (153): taskcluster

In this case, we had established 153 TCP connections to a server.

Looking at the requests source code, a requests.session by default
creates a connection pool with capacity of 10. There are actually 2
components to the capacity: idle connections and active connections.
What appeared to be happening was we could obtain an idle connection,
use it, and then it would be discarded when put back in the idle
pool because the idle pool was at capacity. Furthermore, it also
appears that connections were sitting around waiting for a TCP
connection.

This commit uses a custom "adapter" with an increased pool size that
matches the concurrency level of the code issuing the HTTP requests.
This should increase the number of concurrent TCP connections / requests,
decreease the number of TCP connections being used overall, and make
decision tasks complete faster.

MozReview-Commit-ID: 6NDbz78TM2y

--HG--
extra : rebase_source : a48e1dae31a5e2af2bc554b544a9019d50dc784f
2016-08-01 14:49:55 -07:00
Gregory Szorc 66dab0495d Bug 1290620 - Use run-task from decision task; r=dustin
This commit does a lot. But it's really not too difficult to comprehend
once you focus on the final state, which is basically the same as the
"lint" image and derived tasks.

Before, the "decision" image contained a "checkout-gecko" script and
"run-action" and "run-decision" scripts. The latter 2 invoked the first
script.

The "run-task" script basically does what the combination of these
scripts were doing before. So we switch to it.

While we're here, we also replaced the custom Mercurial installation in
this image with the shared install-mercurial.sh script. The
system-setup.sh script for the decision image is now short and sweet.

The YAML files for tasks using this image have been updated to use
"run-task." We no longer have to pass an environment variable to hold
command arguments. So we revert to putting these arguments inline in
the task's command. Dustin never liked passing the arguments as
environment variables, so it should make him happy ;) We add
--log-no-times because "run-task" prefixes its own timestamps on output
lines.

The path to the Gecko checkout has been changed from
/home/worker/workspace to /home/worker/checkouts to match changes made
in bug 1289643.

Finally, since "checkout-gecko-and-run" is no longer used, we delete it.

The Docker image version has been bumped accordingly.

MozReview-Commit-ID: HAGuCz6668Q

--HG--
extra : rebase_source : 9586873c21d67f8ce869b7ceee221e8fa8775539
2016-07-29 21:03:48 -07:00
Gregory Szorc 1dadb3eea1 Bug 1290620 - Implement a run-task wrapper script; r=dustin
Before, we simply executed scripts inside Docker containers. This
frequently resulted in a wall of text with command output. It was
difficult to discern things like the time spent performing certain
actions.

Before, individual tasks had to drop permissions from the default
root user themselves. Dropping permissions isn't exactly a trivial
thing to do and a number of tasks didn't do it or did it wrong.

Before, we had a "checkout-gecko-and-run" script that kinda/sorta
did common activities for us. But it was written as a shell script
and doing advanced things was difficult.

This commit can be treated as a rewrite of "checkout-gecko-and-run"
as a Python script. But it also does a bit more. It prefixes output
with timestamps so we know how long operations took. It features more
robust argument parsing, so we can add new features more easily.

To prove the new wrapper script works, the lint image and all tasks
using it have been converted to use it.

MozReview-Commit-ID: 5d95u5Xebtq

--HG--
extra : rebase_source : 3a1d84782b01d7743e846bd0c04d7867813dd8a3
2016-07-29 20:53:21 -07:00
Gregory Szorc e2deca67fe Bug 1290620 - Make `mach taskgraph` honor mach logging settings; r=dustin
Before, it ignored mach logging settings passed via command line
arguments.

MozReview-Commit-ID: CNckQHrOdX9

--HG--
extra : rebase_source : b4b190e8e2d073e8932799c8d8bedf49b5f3cfd8
2016-07-29 20:37:42 -07:00
Dustin J. Mitchell ac4f355abc Bug 1290611: make test_p_expands_ridealongs resilient; r=gps
Use the source RIDEALONG_BUILDS value in the module under test so that changes
to that variable do not cause the test to fail.

MozReview-Commit-ID: EfHQ7baBziB

--HG--
extra : rebase_source : 1c52bf62709236db14a3ce318495891a2eb274f4
2016-07-29 23:01:04 +00:00
Dustin J. Mitchell 25cdf853c0 Bug 1290611: fix test_generate_context_hash; r=gps
The existing hash was for an empty tarfile.  Oops!

MozReview-Commit-ID: 1KOZxnDmoOH

--HG--
extra : rebase_source : 5d4db299dba80f98ba0383e88a1f4cfcb1dbcc70
2016-07-29 22:54:18 +00:00
Gregory Szorc 1ed7f8482f Bug 1290531 - Build Docker images from custom tar contexts; r=dustin
Now that Docker image building is called from Python, we can start to
do advanced stuff with it.

With this commit, we switch from building Docker images directly from
the source directory ("the Docker way") to using our custom Docker image
build contexts.

The main advantage of this is that locally-built Docker images can now
use our custom Dockerfile syntax to include extra files in the build
context!

The code for building a Docker image from a context has been extracted
to its own standalone function. I have nefarious plans for this in the
future, such as the ability to override the FROM syntax to specify
URLs of images. This would allow us to host base images on our own
server, which removes a dependency on Docker Hub and improves
determinism, since images on Docker Hub change all the time.

MozReview-Commit-ID: 5lTdV8yEHkc

--HG--
extra : rebase_source : c374558b82d0d0302351ffbf3c82878c6663f40c
2016-07-29 13:41:59 -07:00
Gregory Szorc 65c418d029 Bug 1290531 - Invoke docker from Python, remove build.sh; r=dustin
build.sh had been reduced to invoking `docker`. We move that invocation
to Python and remove build.sh. Long live build.sh!

MozReview-Commit-ID: FQBDJv4HSaU

--HG--
extra : rebase_source : 82979f2526ab1ab6dd5c25032b8d81074c797d94
2016-07-29 13:22:06 -07:00
Gregory Szorc 1ec6c0a5b5 Bug 1290531 - Move image tag resolution to Python; r=dustin
We already had code for resolving the image registry and tag. We
refactored it slightly to be more useful then changed build.sh to
accept the tag as an argument.

At this point, build.sh is basically a wrapper around `docker`. But
there's a special case for executing custom "build.sh" files we
need to eliminate first...

MozReview-Commit-ID: A9HVvxgCdG2

--HG--
extra : rebase_source : 30a408860aea619813f32723fe960d1224b5dbc7
2016-07-29 13:06:10 -07:00
Gregory Szorc efd6c78ba9 Bug 1290531 - Move image name verification to Python; r=dustin
MozReview-Commit-ID: 8KJZH5vjANS

--HG--
extra : rebase_source : f2cf88113473fa1dadcd4ff6f3baaf7dca55ee55
2016-07-29 12:59:46 -07:00
Gregory Szorc e02661d117 Bug 1290531 - Move docker validation from build.sh to Python; r=dustin
Now that we have a mach command and Python code for doing Docker image
building, we can start moving code from build.sh to Python.

We start with searching for and validating the `docker` binary works.

MozReview-Commit-ID: 2DCc3b8UyZ3

--HG--
extra : rebase_source : ce5ad9dc39eea1fae97aec93eaefbc2c169ec313
extra : amend_source : 806411d3777c657b21d33bbb0e18e06de95716ce
2016-07-29 12:58:39 -07:00
Gregory Szorc d880926e5a Bug 1290531 - Add mach taskcluster-build-image command; r=dustin
Docker image building will soon need to use Python in order to produce
the image build context archive.

As the first step towards this, we introduce a Python function that
calls out to build.sh. We also implement a mach command that calls it
so we can test the functionality.

I'm not keen about introducing a new mach command. I'd prefer to have
a sub-command instead. I'm not sure what all uses
`mach taskcluster-load-image`. Perhaps we could make a `taskcluster`
top-level command. Or perhaps we could fold these image commands into
`mach taskgraph`? Either way, the mach side of this isn't terribly
important to the commit series: most of the code will live inside a
Python module outside of mach.

MozReview-Commit-ID: AI8p6H4psNh

--HG--
extra : rebase_source : a3a18cbeb05152ab65f2bf152fd2517bbcd8981e
2016-07-29 12:45:25 -07:00
Dustin J. Mitchell 7d2c453f6e Bug 1290602: add TransformTask to task-graph machinery; r=gps
This abstracts out the process of running transforms as specified in kind.yml,
with some useful default behavior that can be overridden by subclasses.

MozReview-Commit-ID: 8pY4IYaN7NU

--HG--
extra : rebase_source : 66711546879edacc5757197674b5bd3f643a0093
extra : source : 9930bede24bcda58c40ca0ee9085aedc00e8ec1b
2016-08-01 17:52:52 +00:00
Gregory Szorc 48d65b223f Bug 1289643 - Allow level-{{level}}-checkouts cache to be used on Try; r=dustin
Previously, the VCS checkout cache would be optimized away on Try. This
meant every task on Try had to create its own checkout from scratch. This
meant writing ~150,000 files. By allowing use of the cache, we minimize
the amount of work tasks need to perform on Try and therefore make tasks
complete faster, on average.

MozReview-Commit-ID: EWuic8lFVtv

--HG--
extra : rebase_source : fd1096da52b499064ab3c0962a4321e8d4f92bb9
2016-07-29 11:10:48 -07:00
Gregory Szorc 96fa6fe838 Bug 1289643 - Change path for checkouts from "workspace" to "checkouts"; r=dustin
Currently, TaskCluster tasks tend to use the "workspace" directory as
a cache that manages the source checkout *and* additional state.

Historically at Mozilla, we've lumped "source checkout" and "workspace"
(sometimes known as an "objdir") into the same directory. This is
not ideal. Ideally, there is an immutable, read-only source checkout
and all files produced from that source live in a separate directory.

In this commit, the "workspace" directory for the "lint" image has been
renamed to "checkouts" and all tasks using the image have been updated
accordingly. By having "checkout" in the name, we clearly identify this
cache as being relevant to source checkouts, which IMO can serve a
different role from "workspaces." This distinction is important, as the
next commit will prevent the "checkouts" cache from getting optimized
out in certain tasks.

To hammer this point home, documentation on common caches has been
introduced.

MozReview-Commit-ID: BSEc4dM5YCt

--HG--
extra : rebase_source : 5a62939e066d3723736b41e14007112d92346684
2016-07-29 10:44:19 -07:00
Gregory Szorc 67edc6b484 Bug 1289643 - Add $ to regular expression in hg-shared cache name; r=dustin
All the other expressions are anchored via ^ and $.

MozReview-Commit-ID: BkCbZZUnwK6

--HG--
extra : rebase_source : 0dc6c7577898e447946217494e5cd491b13e22fa
2016-07-29 10:29:25 -07:00
Alexandre Lissy f361a89027 Bug 1290685 - Update TaskCluster to use github.com for B2G.git r=garndt
MozReview-Commit-ID: EmLzh977XWi

--HG--
extra : rebase_source : cd9aa8b7e4119dd63eb2e31a2b2b745f1c6536ee
2016-07-31 00:03:51 +02:00
Geoff Brown 80b93cef57 Bug 1280440 - Add TC Android x86 tests, tier 2; r=dustin 2016-08-02 09:37:44 -06:00
Joel Maher 8c814c34a8 Bug 1290459 - port changes from bug 1285582 to test-ubuntu1604.sh. r=ahal
MozReview-Commit-ID: L5HjOIesJCQ

--HG--
extra : rebase_source : c1d9903e01d2be4710f551c451446690180a34b0
2016-07-29 14:56:31 -04:00
Gregory Szorc a91e4e11c1 Bug 1290516 - Remove {{project}} from cache path for decision and action tasks; r=dustin
Currently, the gecko-decision and action tasks maintain a separate cache
for each "project" (Firefox repo) source checkout. In my opinion, this
is not necessary.

Separate caches/source checkouts mean a lower chance for a cache hit:
a lower chance that any given worker will have a source checkout readily
available for the "project" being built. They also mean workers store
more data and files in caches.

By using a shared cache for source checkouts, workers will ideally
only have a single source checkout cache and will be pretty much
guaranteed to have a checkout readily available (the main exception
being the first task on a freshly-provisioned worker).

A downside of a shared cache is that workers may spend more time doing
`hg update` operations. e.g. if the last task was from mozilla-release
and the current task is from mozilla-central, thousands of files will
be updated. However, I believe we will still be better off because
separate caches *increase* the probability for a full checkout, which
involves writing ~150,000 files! So I believe this change will lower
the overall amount of VCS work done by workers while possibly
sacrificing the lowest possible execution time (which is achieved by
minimizing the `hg update` work).

It's worth noting that `hg robustcheckout` (which is used by these
tasks) does the equivalent of an `hg purge --all`. This ensures that all
untracked and ignored files from previous tasks are deleted. So there
should be no contamination from previous tasks.

MozReview-Commit-ID: I5Ng3xFEfou

--HG--
extra : rebase_source : db423e5005d1e26d7dfebbbfa28893fc32caef6f
2016-07-29 10:09:06 -07:00
Andrew Halberstadt dc3d031216 Bug 1289879 - Activate the mozharness virtualenv when running tests on interactive workers, r=armenzg
There are some packages like 'requests' that are bundled in the mozharness venv, but not in the test
package. It would be easy to manually add these to sys.path in the mach bootstrap script, but it's
much nicer to simply activate this virtualenv in the first place.

MozReview-Commit-ID: 8xeJEIgUbLj

--HG--
extra : rebase_source : b87e5ef46041d9d5a89d419e97fe3a316de6c8c2
2016-07-20 16:40:40 -04:00
Steve Fink 386f007ddd No bug. Demote SM(msan tsan) to tier 3 for now, r=fitzgen
DONTBUILD because it's not worth it.

--HG--
extra : rebase_source : 1cea5d6121fda41fc668bf24990734abf4a56677
extra : amend_source : 318ec9edcf8072ffe1840b5f7d8ce144be63424f
2016-07-28 11:34:13 -07:00
Steve Fink d2c8a94cbe No bug. Do not create a whole new workerType just for shell builds, r=jonasfj
MozReview-Commit-ID: 1Bn0SDKJM3A

--HG--
extra : rebase_source : 94e43c347042f4ef9ec3fc582f4ea37cc9239038
2016-07-22 16:47:49 -07:00
J. Ryan Stinnett c9822d13cd Bug 1288225 - Exclude eslint-plugin-mozilla from tooltool. r=ahal
This removes the in-tree plugin from the tooltool archive and uses that code
directly from the Gecko checkout instead.

For automation, we now get ESLint and external plugins from tooltool and then
symbolic link to the in-tree plugin.

For local development, we install ESLint and external plugins following the
shrinkwrap file created from the last change to the tooltool archive.  The local
plugin is then installed.

This change also removes the list of module versions from mach_commands.py, so
there is only one place to update module versions for the future.

MozReview-Commit-ID: AhbZ8lVPmN4
2016-07-28 11:53:54 -05:00
Gregory Szorc 5fbf1ec6a6 Bug 1289625 - Use checkout-gecko-and-run in mozharness-gecko task; r=dustin
The first thing we do is switch from the desktop-test image to the
lint image: the mozharness tests don't need anything in the
desktop-test image. This does mean converting from Ubuntu 12.04
to 16.04. I'm fine upgrading to a newer operating system by
4 years :)

Once we're on the lint image, we switch to use checkout-gecko-and-run.
The mozharness-gecko task now does version control just like
eslint-gecko and mozlint-flake8.

MozReview-Commit-ID: 6mzAZ7LSBWl

--HG--
extra : rebase_source : a766e5db61998d1cfbcb792ad09a265f45027f54
2016-07-26 19:12:14 -07:00
Mihai Tabara 82776bdf8c Bug 1289122 - Remove coalescing from PGO try jobs. r=dustin
MozReview-Commit-ID: KAqZlUjMXdQ
***
Bug 1289122 - bugfix to chain together the elements to be removed. r=dustin

MozReview-Commit-ID: 3XhHZgmq6e3

--HG--
extra : rebase_source : 2d0ac3710b4ce1376db17a50c6b3bc4354da3ea4
2016-07-26 00:11:40 +01:00
Joel Maher 65e19d07b7 Bug 1289209 - linux64/asan should run on ubuntu12.04 as we leak on 16.04. r=dustin
MozReview-Commit-ID: B9cnhHh48oZ

--HG--
extra : rebase_source : a17b80527d576c8d706b1ca73673c75b1737f571
2016-07-26 13:49:04 -04:00
Dustin J. Mitchell fd3cfffba7 Bug 1289225: increase createTask concurrency; r=gps,jonasfj
MozReview-Commit-ID: DuIzZUbTsaY

--HG--
extra : rebase_source : a96e52f32edd6cda86db9e0d967820235f3aa7d3
2016-07-25 20:52:43 +00:00
Andrew Halberstadt 9587255e24 Bug 1285582 - Make sure Xvfb is running for interactive tasks, r=dustin
Normally we start Xvfb as a background task, then run the tests from the
same script. However, in interactive mode we were starting Xvfb, the script
would exit, and then we would potentially run tests later on from another
script. Unforunately this meant that Xvfb was dying with the first script
and tests would fail.

This patch runs Xvfb in a screen session so that it will still be available
later on when running an interactive shell.

MozReview-Commit-ID: EduVyglo2BG

--HG--
extra : rebase_source : 6e2c40ee16f80792f038fd581168e181a2c4bf51
2016-07-11 11:14:46 -04:00
Carsten "Tomcat" Book 574d0d452b merge mozilla-inbound to mozilla-central a=merge 2016-07-26 11:55:54 +02:00
Gregory Szorc 8194661376 Bug 1247168 - Use a cache for repo checkout in lint tasks; r=dustin
Previously, every lint task would have to create its own checkout. This
was time consuming.

The robustcheckout extension purges the working copy of *all*
untracked and ignored files. It also restores modified files to
their original state. In other words, as long as you trust Mercurial
to go from revision X to revision Y, robustcheckout is as good as
a fresh checkout.

This commit adds a cache for the working directory checkout so lint
tasks only have to effectively perform incremental `hg update` between
task executions. This should make tasks spend a lot less time
doing version control foo.

On Try, time for flake8 tasks is currently hovering around 4 minutes.
After this change, I've seen tasks finish as quickly as 11s! But that
was with a hacked up legacy.py that added the workspace cache to the
whitelist for Try. While I would like to see workspace reuse on Try
eventually, this is not the right commit to roll that out in.

MozReview-Commit-ID: 66P2rt896qE

--HG--
extra : rebase_source : 2a7c8d396e85ba4eae84f8843256050a2288c9d0
extra : intermediate-source : c478ecb14bf6164ef0c955acee3a0a2f18e415c5
extra : source : 63d54efdc1f8effb0370644c11014a3f0404073b
extra : histedit_source : 560701ce41c870171443c78e3a9de3998fbf9306
2016-07-20 16:21:46 -07:00
Gregory Szorc 9275cbf8af Bug 1247168 - Convert lint image and tasks to use robustcheckout; r=dustin
The robustcheckout Mercurial extension does a clone+checkout optimally.
Read the bug for more on it.

robustcheckout is already used by mozharness automation. It has resulted
in a significant reduction in I/O usage and utilization in automation.

This commit replaces tc-vcs with the robustcheckout equivalent.

We replace the existing tc-vcs scope and cache with a new one.
Because Dustin and I are paranoid, we maintain separate caches per
SCM level - even though we could arguably share the same cache. Defense
in depth.

Robustcheckout (when used with --sharebase) pools storage for related
repos automatically. i.e. changesets from inbound and central will
be in the same store. This means you likely only have one copy of
each changeset per cache. This can result in significant space savings.
And, since there are fewer copies floating around, hg.mozilla.org
and various network appliances are working less too!

Since tc-vcs is no longer used, we stop it from being installed.

While we're here, we also change the images to execute as the
"worker" user. This happens automatically as a result of using
the "checkout-and-run" script.

MozReview-Commit-ID: EDeebuP7TkT

--HG--
extra : rebase_source : 2bec5dd9d6fe5565831bb35f195859aa12dd0bf2
extra : intermediate-source : 06481d97a485f6566554b087bc3880d76361e8ec
extra : source : d368700c93ef085325a081219d7aeb8512bc54a1
extra : histedit_source : c07505273fc8f10acf8e8d3ee01e327afd0aa63d
2016-07-19 13:30:03 -07:00
Gregory Szorc df70fc2d86 Bug 1247168 - Make mozilla-unified the base repository for Firefox; r=dustin
https://hg.mozilla.org/mozilla-unified contains heads from all the
major Firefox repos. In addition, it is encoded on the server in such a
way that it is several hundred megabytes smaller despite containing
30,000+ more changesets. This means faster clones and faster
operations.

Cloning this repo does require a new version of Mercurial. So if any
TC tasks are using an ancient Mercurial - one that is vulnerable to
known CVE issues in fact - this will flush them out.

MozReview-Commit-ID: 2VHDa6FEeeJ

--HG--
extra : rebase_source : db4990bcde0503fd14d82a5d16c71adbb4f92be3
extra : histedit_source : 6c555bd3df12536d1c48b45d8cc76611e3f7032f
2016-07-19 16:46:25 -07:00
Gregory Szorc 6aa899bbf4 Bug 1247168 - Tag and use version 0.1.2 of the decision image; r=dustin
Changes to the decision Docker image have been compelted. We're ready to
use the new image.

We tag the image, update version references, change the task caches
so the new Mercurial pooled storage from the robustcheckout extension is
used, and convert the decision tasks to run as the "worker" user.

MozReview-Commit-ID: 61v9Ivy59zG

--HG--
extra : rebase_source : 640318a87660950c5e0680867a1bfdd68e35f127
extra : histedit_source : ec53fc576c00e5f2053167b37544ac7afccaecb5
2016-07-21 11:32:07 -07:00
Gregory Szorc 94d4854313 Bug 1247168 - Actually use workspace cache in decision task; r=dustin
The decision task configures a /home/worker/workspace cache. However,
the command we run in the container references a "workspace" relative
path. From logs in automation, it appears that PWD during execution
is "/" because "workspace" is being resolved to "/workspace." The
net result of this is we appear to be performing a VCS clone+checkout
on every single task.

This commit fixes the paths so our workspace cache is actually used.

MozReview-Commit-ID: Kj6REep5bSs

--HG--
extra : rebase_source : 8cd8be43dfd34f2970b47721c3da8e3957a8bfed
extra : histedit_source : b81dce523a88e44eb3fa8b1a68840066edca382d
2016-07-20 15:34:10 -07:00
Gregory Szorc 03efbd9159 Bug 1247168 - Don't remove hg-shared scopes; r=dustin
These scopes will be introduced in subsequent commits. We don't want
them to get removed, just like we don't want the tc-vcs caches to get
removed.

MozReview-Commit-ID: 790SzpAUxE4

--HG--
extra : rebase_source : d8148aa38bad09468f67ded1a64f432e2e30c63a
extra : source : 923b86a15d91cb22999a7c94a4a708845d23aa9d
extra : histedit_source : 6d85127fdcc2e795a54eeb836ce11f158e5e88cd
2016-07-19 14:10:14 -07:00
Gregory Szorc 260d3ee7ed Bug 1288567 - Inline create_context_tar; r=dustin
The function was only used once and was providing little to no value.

A test of this function has been removed. Tests for the lower-level
context creation function are sufficient.

MozReview-Commit-ID: D9EhmZQlqG5

--HG--
extra : rebase_source : 4b3faa0fc5f085c1c77fe5636744946a6d442b05
2016-07-25 11:48:20 -07:00
Gregory Szorc fc3f70b542 Bug 1288567 - Add special Dockerfile syntax to add arbitrary files to context; r=dustin
A limitation of traditional docker build context generation is it
only includes files from the same directory as the Dockerfile. When
repositories have multiple, related Dockerfiles, this limitation
results file duplication or putting all Dockerfiles in the same
directory (which isn't feasible for mozilla-central since they would
need to be in the root directory).

This commit enhances Dockerfiles to allow *any* file from the
repository checkout to be ADDed to the docker build context.

Using the syntax "# %include <path>" you are able to include paths
or directories (relative from the top source directory root) in the
generated context archive. Files add this way are available under the
"topsrcdir/" path and can be ADDed to Docker images.

Since context archive generation is deterministic and the hash of
the resulting archive is used to determine when images need to be
rebuilt, any extra included file that changes will change the hash
of the context archive and force image regeneration.

Basic tests for the new feature have been added.

MozReview-Commit-ID: 4hPZesJuGQV

--HG--
extra : rebase_source : 99fae9fe82102126fbee879c134981047bb4a601
2016-07-21 16:51:30 -07:00
Gregory Szorc 0c32f4dd33 Bug 1288567 - Use create_context_tar in generate_context_hash; r=dustin
This restores order to only having a single hash for a context
directory.

Using a tempfile here is a bit unfortunate. It can be optimized later,
if needed.

MozReview-Commit-ID: LMNsvt3fDYx

--HG--
extra : rebase_source : 8c2b70164aed6d744a71d170d0324797e755cbaf
2016-07-22 12:46:06 -07:00
Gregory Szorc b1bf2c70e8 Bug 1288567 - Add basic test for context tar creation; r=dustin
Now that the context tar creation function is standalone and doesn't
rely on external state, we can start unit testing it easier.

We establish a basic unit test that verifies the function works as
advertised and that output is deterministic.

MozReview-Commit-ID: H4MY28PiHSN

--HG--
extra : rebase_source : 692a5e3d5af6edd14b3d4ceb7c90cd1e0344052f
2016-07-22 10:57:27 -07:00
Gregory Szorc e44882ed6d Bug 1288567 - Pass topsrcdir into create_context_tar; r=dustin
Relying on global variables like GECKO is a bit dangerous. To facilitate
testing of archive generation in subsequent commits, let's pass an
path into this function.

The argument is currently unused.

MozReview-Commit-ID: Et1UYraflDP

--HG--
extra : rebase_source : 012095bc2450c72467f3f65f71bcb4cf6efcde66
2016-07-22 10:32:58 -07:00
Gregory Szorc 6cf855965e Bug 1288567 - Use context hash of tar file; r=dustin
Now that tar file generation is deterministic, we can use the hash
of the created archive rather than the hash of the files that are
(presumably) in the archive.

This temporarily breaks consistent hashing by using independent
hashing mechanisms. This will be cleaned up in a subsequent commit.

MozReview-Commit-ID: CWooVGfDKZO

--HG--
extra : rebase_source : 86923635f960e23f1483068bf809dec7aeacefd1
2016-07-22 10:24:08 -07:00
Gregory Szorc fd01511ec7 Bug 1288567 - Use deterministic tar archive generation; r=dustin
We recently implemented code in mozpack for performing deterministic
tar file creation. It normalizes things like uids, gids, and mtimes
that creep into archives.

MozReview-Commit-ID: 1tn5eXkqACQ

--HG--
extra : rebase_source : 6b069a3a50c9103ae4f6185b26d6a37658179f42
2016-07-22 10:29:58 -07:00
Gregory Szorc edbd669eca Bug 1288567 - Extract function for creating context tars; r=dustin
Upcoming commits will refactor how context tarballs are created. In
preparation for this, we establish a standalone function for creating
context tarballs and refactor docker_image.py to use it.

MozReview-Commit-ID: KEW6ppO1vCl

--HG--
extra : rebase_source : b81decf9ca14ff0216514f47419e96eb57d6f851
2016-07-22 10:20:06 -07:00
Carsten "Tomcat" Book b9a6c687fa merge mozilla-inbound to mozilla-central a=merge 2016-07-25 15:50:41 +02:00
Geoff Brown 185149d31c Bug 1287831 - Split TC Android debug mochitest-chrome into 2 chunks and specify chunks explicitly; r=dustin 2016-07-25 11:11:15 -06:00
Joel Maher 65771e9829 Bug 1281179 - Create a docker image for Ubuntu 16.04 for use in tests. r=dustin
MozReview-Commit-ID: ApHhev5J21x

--HG--
rename : taskcluster/scripts/tester/test-linux.sh => taskcluster/scripts/tester/test-ubuntu1204.sh
2016-07-25 10:44:37 -04:00
Carsten "Tomcat" Book a3904e8a8a Merge mozilla-central to mozilla-inbound 2016-07-25 15:59:01 +02:00
Rob Thijssen 4bcffaf35a Bug 1285504 - set prod visibility of try win builds to on; r=pmoore
MozReview-Commit-ID: 9z7S7JhNfWb
2016-07-25 09:39:20 +01:00
Rob Thijssen 66eeeb9307 Bug 1285504 - switch to try win build worker type; r=pmoore
MozReview-Commit-ID: C6bAMLOKFG5
2016-07-25 09:37:42 +01:00
Geoff Brown 099aae1f90 Bug 1285269 - Add TC Linux 64 asan reftests; r=dustin 2016-07-22 08:18:51 -06:00
Justin Wood b0b1d1248c Bug 1288395 - Don't run linting on non-py files in the TC directory. r=ahal
MozReview-Commit-ID: Co7biSCepY7

--HG--
extra : rebase_source : ffc644df30e960f07ccf8b8b6830707fc0d33a71
2016-07-21 09:07:54 -04:00
Tom Tromey 5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
Kalpesh Krishna 6b331bc0c2 Bug 1288220 - Adding a from_json() class method to TestTask. r=dustin
MozReview-Commit-ID: 5HYb4jf4ATT

--HG--
extra : rebase_source : 6289426112ff17c61f7151bc8e448978d1cc85e8
2016-07-21 01:27:21 +05:30
Carsten "Tomcat" Book 8428cd56e3 merge mozilla-inbound to mozilla-central a=merge 2016-07-20 11:20:15 +02:00
Dustin J. Mitchell f243f622ac Bug 1281004: remove now-unused yaml task definitions; r=Callek
MozReview-Commit-ID: xxjjlIYAma

--HG--
extra : rebase_source : bcef830fb9d729f985449d3a0819f8abd55c3d6c
extra : histedit_source : 7a0bf6b745875d4b06553fcc476dba5772bc831f
2016-07-10 14:27:41 +00:00
Dustin J. Mitchell d7f3c42ef5 Bug 1281004: make fennec debug tier-1 (forward-port of Bug 1282850); r=Callek
MozReview-Commit-ID: GdiwlxgwZwF

--HG--
extra : rebase_source : d8e7730649df6303bc2f6783ba3f1095ace73361
extra : histedit_source : ef2b7f789dadc64d7ac95c3ee0d31bc2855e09df
2016-07-14 01:48:08 +00:00
Dustin J. Mitchell ffca84ff7d Bug 1281004: Specify test tasks more flexibly; r=gps; r=gbrown
This introduces a completely new way of specifying test task in-tree,
completely replacing the old spider-web of YAML files.

The high-level view is this:

 - some configuration files are used to determine which test suites to run
   for each test platform, and against which build platforms

 - each test suite is then represented by a dictionary, and modified by a
   sequence of transforms, duplicating as necessary (e.g., chunks), until
   it becomes a task definition

The transforms allow sufficient generality to support just about any desired
configuration, with the advantage that common configurations are "easy" while
unusual configurations are supported but notable for their oddness (they
require a custom transform).

As of this commit, this system produces the same set of test graphs as the
existing YAML, modulo:

  - extra.treeherder.groupName -- this was not consistent in the YAML
  - extra.treeherder.build -- this is ignored by taskcluster-treeherder anyway
  - mozharness command argument order
  - boolean True values for environment variables are now the string "true"
  - metadata -- this is now much more consistent, with task name being the label

Testing of this commit demonstrates that it produces the same set of test tasks for
the following projects (those which had special cases defined in the YAML):

  - autoland
  - ash (*)
  - willow
  - mozilla-inbound
  - mozilla-central
  - try:
    -b do -p all -t all -u all
    -b d -p linux64,linux64-asan -u reftest -t none
    -b d -p linux64,linux64-asan -u reftest[x64] -t none[x64]

(*) this patch omits the linux64/debug tc-M-e10s(dt) test, which is enabled on
ash; ash will require a small changeset to re-enable this test.

IGNORE BAD COMMIT MESSAGES (because the hook flags try syntax!)

MozReview-Commit-ID: G34dg9f17Hq

--HG--
rename : taskcluster/taskgraph/kind/base.py => taskcluster/taskgraph/task/base.py
rename : taskcluster/taskgraph/kind/docker_image.py => taskcluster/taskgraph/task/docker_image.py
rename : taskcluster/taskgraph/kind/legacy.py => taskcluster/taskgraph/task/legacy.py
extra : rebase_source : 03e70902c2d3a297eb9e3ce852f8737c2550d5a6
extra : histedit_source : d4d9f4b192605af21f41d83495fc3c923759c3cb
2016-07-11 23:27:14 +00:00
Dustin J. Mitchell 3a0a2cca0a Bug 1281004: only set MOZ_NODE_PATH for desktop; r=gbrown
MOZ_NODE_PATH should not be set for Android tests.  Rather than setting it to
the literal "None", this omits the environment variable on that platform.

Only `fx_docker_desktop_generic.yml` (and now `fx_docker_android_generic.yml`)
inherit from `fx_docker_test_base.yml`.  And `fx_android-api-15_generic.yml` is
the only Android-related YAML file to inherit from
`fx_docker_desktop_generic.yml`.

MozReview-Commit-ID: 7BhGXk9c8ir

--HG--
extra : rebase_source : 8190d2f6f2368acd1c9c11a3e16062e4589a23ac
2016-07-06 22:14:52 +00:00
Dustin J. Mitchell a317245052 Bug 1281004: fix suite/flavor for android tests; r=gbrown
MozReview-Commit-ID: 3PFpeq9OZ4l

--HG--
extra : rebase_source : 4746ff1e03ed719ab180ff552be4d73ae9805a06
extra : source : 4f6b7bbed5629c2f1e2303ef0d10ef6fd25603ce
2016-07-01 19:31:16 +00:00
Dustin J. Mitchell 09d7376db0 Bug 1281004: put the -e10s in the groupSymbol for marionette; r=RyanVM
MozReview-Commit-ID: AH2IzwRmVbq

--HG--
extra : rebase_source : c1f19fd84b137d95d9cbd98ca246c68791892c21
extra : source : 39eb529d58ecf0385f86c36700de6bac37991f9d
2016-06-30 21:13:04 +00:00
Dustin J. Mitchell eceebc5a83 Bug 1281004: run e10s jsreftests in 2 chunks like non-e10s; r=jmaher
This makes the two copies of the suite consistent.

MozReview-Commit-ID: FhxzwQlERnD

--HG--
extra : rebase_source : e13291d9d852521cd9af9de79addc58ccfe62949
extra : source : 85f75a951f93fb7105cd9613ed98d041575c6a35
2016-06-30 20:20:40 +00:00
Dustin J. Mitchell 0c220279ab Bug 1281004: remove -e10s from reftest TH symbols; r=RyanVM
For all of ther suites, the -e10s is attached to the group symbol, not the job
symbol.

MozReview-Commit-ID: BZcRCnEMy5U

--HG--
extra : rebase_source : 6b0b294d8ece3b325fd3af43a60f994427b9ddd8
extra : source : 05714f5e19e6353aaf1f96540e70ba2385bbee89
2016-06-30 20:04:37 +00:00
Dustin J. Mitchell 424b8d223e Bug 1281004: run all web platform tests on desktop-test-xlarge; r=jmaher
This makes the instance size consistent for the whole suite

MozReview-Commit-ID: 8s6n6BwXSjB

--HG--
extra : rebase_source : 87744db0ff2122cde214e22dc356af3ee3b87503
extra : source : 46e29447f7f31124baae8008ec0033b1b3dddbe0
2016-06-30 19:42:17 +00:00
Dustin J. Mitchell d4d89a7740 Bug 1281004: add suite and flavor for web platform tests; r=armenzg
MozReview-Commit-ID: Es0PM38OCTP

--HG--
extra : rebase_source : e5f679e4cf280a926da588c5f94f0ae7eeea6b39
extra : source : 13dd3d7699437ad63ee054b3d933c1d82dd18cd4
2016-06-23 21:39:59 +00:00
Dustin J. Mitchell bb52cf3134 Bug 1281004: delete mulet test jobs; r=gerard-majax
MozReview-Commit-ID: 2beMnQyvYh

--HG--
extra : rebase_source : 0b4408539a0e65a7ee1f9f63c3e4961e290a0c07
extra : source : 9c36a34674a19473a22eba0b9bef999d1a9b4c75
2016-07-08 20:14:26 +00:00