Commit Graph

513 Commits

Author SHA1 Message Date
Ben Wagner
325778b888 Update android-skqp Docker image to accept licenses
Set DOCKER_CONFIG env var for all docker commands so that the Swarming
task uses the config created here:
https://skia.googlesource.com/buildbot/+/06aaf21b5d91a68de7c02aafc0fdee8531ba0c21/scripts/run_on_swarming_bots/install_docker.py#65

Bug: skia:8698
Change-Id: I731a99abc274caa498af8dde5142a7e6a6b6eca3
Reviewed-on: https://skia-review.googlesource.com/c/185690
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
2019-01-22 23:34:58 +00:00
Ben Wagner
64b894b98c Try a workaround for the Pixel ASAN push failure
There have been many recent instances where ASAN tasks running on Pixel
devices have failed to push resources to the device due to
"secure_mkdirs failed: No such file or directory." The theory is that
because the "Setting up device to run ASAN" step reboots the device, the
device isn't actually ready at the time it reports being ready. This CL
adds a sleep to the ASAN setup to work around this problem.

Here are recent examples of this failure:
https://chromium-swarm.appspot.com/task?id=4279aeb78961de10
https://chromium-swarm.appspot.com/task?id=42765d9f44ca4610
https://chromium-swarm.appspot.com/task?id=427a66499846e910
https://chromium-swarm.appspot.com/task?id=4276d85a8f270d10
https://chromium-swarm.appspot.com/task?id=42765cb3ff062a10

Change-Id: Iddf78622de3cd88ea28a532380762baafe479eb7
Reviewed-on: https://skia-review.googlesource.com/c/185320
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2019-01-18 19:58:11 +00:00
Mike Klein
98dea7b11c remove superfluous skia_vulkan_sdk
We don't actually need the SDK to build anymore.

If you previously set skia_vulkan_sdk or relied on VULKAN_SDK
in the environment, now set skia_use_vulkan = true instead.

We still need the linux_vulkan_sdk asset for Test/Perf bots.

Change-Id: I70ad9c5181ae61725b9dc25cc887dd0640beeed6
Reviewed-on: https://skia-review.googlesource.com/c/184065
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2019-01-15 18:53:02 +00:00
Ben Wagner
1cefc0990d Reland "Remove win_vulkan_sdk."
This reverts commit 532c05fec1.

Reason for revert: Fixed by https://skia-review.googlesource.com/c/skia/+/181163

Original change's description:
> Revert "Remove win_vulkan_sdk."
>
> This reverts commit 876dc81f2a.
>
> Reason for revert: Breaking everything
>
> Original change's description:
> > Remove win_vulkan_sdk.
> >
> > We only needed this for the Vulkan headers, which we now have in
> > src/third_party.
> >
> > Change-Id: I453ed73c73b3304520b628527102607d848bcd37
> > Reviewed-on: https://skia-review.googlesource.com/c/180775
> > Commit-Queue: Greg Daniel <egdaniel@google.com>
> > Auto-Submit: Ben Wagner <benjaminwagner@google.com>
> > Reviewed-by: Greg Daniel <egdaniel@google.com>
>
> TBR=egdaniel@google.com,benjaminwagner@google.com
>
> Change-Id: I0ae35fddfc112631a47db9775d790f999abf26f8
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/180779
> Reviewed-by: Ben Wagner <benjaminwagner@google.com>
> Commit-Queue: Ben Wagner <benjaminwagner@google.com>

TBR=egdaniel@google.com,benjaminwagner@google.com

Change-Id: I11a96646cd8f5d9ba9b617243ad4375c6037dbb8
Reviewed-on: https://skia-review.googlesource.com/c/181173
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2019-01-04 17:07:27 +00:00
Greg Daniel
7d06735443 Set skia_use_vulkan on our vulkan bots.
Bug: skia:
Change-Id: Ia7cdab1223ae3eb788e46e2cc4af552b03a2065f
Reviewed-on: https://skia-review.googlesource.com/c/181163
Commit-Queue: Greg Daniel <egdaniel@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Greg Daniel <egdaniel@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2019-01-04 15:49:09 +00:00
Ben Wagner
532c05fec1 Revert "Remove win_vulkan_sdk."
This reverts commit 876dc81f2a.

Reason for revert: Breaking everything

Original change's description:
> Remove win_vulkan_sdk.
> 
> We only needed this for the Vulkan headers, which we now have in
> src/third_party.
> 
> Change-Id: I453ed73c73b3304520b628527102607d848bcd37
> Reviewed-on: https://skia-review.googlesource.com/c/180775
> Commit-Queue: Greg Daniel <egdaniel@google.com>
> Auto-Submit: Ben Wagner <benjaminwagner@google.com>
> Reviewed-by: Greg Daniel <egdaniel@google.com>

TBR=egdaniel@google.com,benjaminwagner@google.com

Change-Id: I0ae35fddfc112631a47db9775d790f999abf26f8
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/180779
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2019-01-03 22:32:07 +00:00
Ben Wagner
876dc81f2a Remove win_vulkan_sdk.
We only needed this for the Vulkan headers, which we now have in
src/third_party.

Change-Id: I453ed73c73b3304520b628527102607d848bcd37
Reviewed-on: https://skia-review.googlesource.com/c/180775
Commit-Queue: Greg Daniel <egdaniel@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
2019-01-03 21:51:25 +00:00
Ben Wagner
2e342cd52c [infra] Uninstall ASAN when cleaning up Android device.
Change-Id: I417f87aefe3c5684366d05703f1065c6e7c77ea0
Reviewed-on: https://skia-review.googlesource.com/c/180379
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
2019-01-02 20:49:23 +00:00
Ben Wagner
bb7d3813d3 [infra] Set GOCACHE in tasks that use go.
Bug: skia:8423
Change-Id: If079c958cb9d0d82fe13da44aaebd5913b40b9d1
Reviewed-on: https://skia-review.googlesource.com/c/179065
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-12-19 15:09:59 +00:00
Ben Wagner
435880277e [infra] Use go_deps asset for Bookmaker tasks
Fix PATH to point to go_deps/bin.

Bug: skia:8423
Change-Id: I853a0741238442e7fd5b3c23cacb3d2f9c6893fa
Reviewed-on: https://skia-review.googlesource.com/c/179064
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2018-12-19 14:41:32 +00:00
Mike Klein
fe64e00997 bump NDK packages to r19-beta2
Originally this started as a bump to r18, the latest stable release.
That's why each packages goes up two versions, from r17 -> r18 ->
r19-beta2.

But our ASAN bots started failing with r18, and despite quite a bit of
investigating, I've been unable to find anything wrong with our code.

Luckily, r19 is coming soon, and it looks like its beta2 works fine.
I think we should just skip r18.

Original change's description:
> bump NDK packages to r18
>
> Newer Clang, GCC is gone.
>
> Clang now supports half-float math on ARMv8, which is pretty neat.
>
> They've dropped support for everything below NDK version 16,
> which happens to be what we target for 32-bit ARM.
>
> Change-Id: Idd1b1b557c5ecaabec4040026fd2ad5adfee5ee7
> Reviewed-on: https://skia-review.googlesource.com/157260
> Reviewed-by: Derek Sollenberger <djsollen@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

Cq-Include-Trybots: skia.primary:Test-Android-Clang-Pixel-CPU-Snapdragon821-arm64-Release-All-Android_ASAN
Change-Id: I0736558fc9b732113854b1b295642e1708b04581
Reviewed-on: https://skia-review.googlesource.com/c/157761
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-12-17 20:07:36 +00:00
recipe-roller
32def82f12 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/143872d11b6f4faa095be0f8c2615bd681eb485b Update git recipes to use buildbucket API. (jsca@google.com)
recipe_engine:
  https://crrev.com/5e53d73e9bcec42830e10b835bc328eb75c9423f [path] Use 'cleanup' dir in mkdtemp and mkstemp (sergeyberezin@google.com)


R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I9e038e4eedad70f1d4133c98c591a09459823a84
Reviewed-on: https://skia-review.googlesource.com/c/177077
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-12-17 12:46:15 +00:00
Ravi Mistry
a067690acf Revert "[infra] Flutter bot should sync to origin/skia-master"
This reverts commit 8061053b73.

Reason for revert: skia-master branch no longer exists

Original change's description:
> [infra] Flutter bot should sync to origin/skia-master
> 
> Bug: skia:
> Change-Id: I223bef522ff8605674f4ecabcbd0624cfc92cb06
> Reviewed-on: https://skia-review.googlesource.com/c/173224
> Reviewed-by: Ravi Mistry <rmistry@google.com>
> Commit-Queue: Eric Boren <borenet@google.com>

TBR=borenet@google.com,rmistry@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: skia:
Change-Id: I3a40a0c6f4a354650d354f2eb4f9d20defe70a0a
Reviewed-on: https://skia-review.googlesource.com/c/178023
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2018-12-16 22:09:11 +00:00
Brian Osman
ef3d04e796 Use descriptive path name for win_toolchain on the bots
Also includes an update of the go_deps asset from
https://skia-review.googlesource.com/c/skia/+/176996

Bug: skia:
Change-Id: I3b7abf746793d6a4883e1703d705847cadfe97e9
Reviewed-on: https://skia-review.googlesource.com/c/176973
Commit-Queue: Brian Osman <brianosman@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-12-12 19:03:08 +00:00
Mike Klein
8a0d0460e6 add -Tidy bot
Change-Id: Ia8d942735cdd1c52a78be02b53f532433abacbc4
Reviewed-on: https://skia-review.googlesource.com/c/176977
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-12-12 17:13:10 +00:00
Brian Osman
044044f5a2 Update win_toolchain, and refactor how it's built
The old win_toolchain script required a Chromium checkout, and
extracted portions of the win_toolchain from that to build the
Skia asset. Instead, use the depot_tools script that assembles
a toolchain from a locally installed MSVC.

The create script doesn't do that, but relies on the user to
run that script first. Automating everything would be a nice
follow-up.

With the new strategy, the toolchain directory is simpler, and
no longer contains the depot_tools kruft or extra directories.
Adjust the bot scripts accordingly. (Renaming the directory to
win_toolchain from 't' would be a nice touch, too).

Finally, I built the new toolchain with the updated process,
and included the ARM64 compiler and libraries, so we can set
up a bot to build Windows ARM64.

Docs-Preview: https://skia.org/?cl=176968
Bug: skia:8569
Change-Id: I4bdf3cfb29d50f4464853445d0226241e70c33b4
Reviewed-on: https://skia-review.googlesource.com/c/176968
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-12-12 15:50:16 +00:00
recipe-roller
d5cf51da90 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/793d8faa696f62fa2c774b8c854bbf4d64dff24e Separate InfraFailure behavior from StepFailure behavior. (jchinlee@chromium.org)


R=jcgregorio@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I324b1d8b7a0d4c0fb8bc4c059a34b3e75ccbd8fd
Reviewed-on: https://skia-review.googlesource.com/c/173434
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-12-04 21:43:35 +00:00
Ben Wagner
9e9723137f Add jobs for GalaxyS9
Change-Id: I039eb2050edc2570287c331a3f7743b4a3748f3e
Reviewed-on: https://skia-review.googlesource.com/c/173239
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-11-29 19:32:04 +00:00
Eric Boren
8061053b73 [infra] Flutter bot should sync to origin/skia-master
Bug: skia:
Change-Id: I223bef522ff8605674f4ecabcbd0624cfc92cb06
Reviewed-on: https://skia-review.googlesource.com/c/173224
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-11-28 17:34:05 +00:00
Mike Klein
66fec0e289 remove -Mini bot, enabled effects in -NoDEPS bot
Now that we've got Flutter builds I'm not very interested in the old
-Mini bot, which was always a proxy for something like Flutter's build.

The NoDEPS bot shouldn't have to disable effects, I think.

Change-Id: I57abca5935b7da3917eb804cda10967af0a18f41
Reviewed-on: https://skia-review.googlesource.com/c/169221
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-11-07 16:59:56 +00:00
Kevin Lubick
e70c6b13dd Update emsdk-release image
Bug: skia:
Change-Id: I780912e1c481765d2d17d2ce66a27470ee8b4912
Reviewed-on: https://skia-review.googlesource.com/c/168483
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-11-06 13:21:34 +00:00
recipe-roller
96ea340182 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/9afc6490c14847e5d73fb041f0def4d95f36821b Manual roll for new run logic (martiniss@google.com)
recipe_engine:
  https://crrev.com/ee0e2c37c03936c3683be03d215f58d47d04ee08 Always use new run logic (martiniss@google.com)


R=jcgregorio@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: If6d406af7bc8f38e95a98b046b5d0719b4adeac7
Reviewed-on: https://skia-review.googlesource.com/c/166622
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-10-31 16:38:00 +00:00
Kevin Lubick
3d99b1e347 Add Correctness tests for CanvasKit
Also make a CPU only and GPU only build (although
the latter still has a lot of CPU logic).

Bug: skia:
Change-Id: I857c2300021c2adb5344865c28e4ad3e8d332954
Reviewed-on: https://skia-review.googlesource.com/c/162022
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-10-16 14:32:28 +00:00
Kevin Lubick
3655e4059e Have BuildStats use Flutter's stripped lib
That's what their treemap says and we should try to match it.

Bug: skia:
Change-Id: Iefa95c0440eb6b45a94a72c1beffb8a1199152a4
Reviewed-on: https://skia-review.googlesource.com/c/161825
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-10-12 21:32:54 +00:00
Kevin Lubick
a60a1945eb Add Vulkan to BuildStats-Mini
Bug: skia:
Change-Id: I320b7945e5e2939404e039cb83831b2bb408aaac
Reviewed-on: https://skia-review.googlesource.com/c/161842
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-10-12 18:37:37 +00:00
Kevin Lubick
37baac128f Remove old code size analysis
Was replaced with:
https://skia-review.googlesource.com/c/skia/+/160220
https://skia-review.googlesource.com/c/skia/+/160765
https://skia-review.googlesource.com/c/skia/+/160920

Bug: skia:
Change-Id: Ia87f4d548cd33dcd6c21c3711aef65ac2dab9f60
Reviewed-on: https://skia-review.googlesource.com/c/160940
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-10-10 14:25:17 +00:00
Kevin Lubick
2626104520 Track Skia's Code size in Flutter
This creates a nice readable display, since Bloaty
doesn't allow filtering through the CLI.

Additionally, rename the flutter job to accurately
represent what settings it actually is (32 bit ARM built
with clang).

Bug: skia:
Change-Id: Iaed313caf43a31105adc8c85c545cc6cb2bcbe30
Reviewed-on: https://skia-review.googlesource.com/c/160920
Reviewed-by: Mike Klein <mtklein@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-10-10 14:24:57 +00:00
Ravi Mistry
eea245c896 Turn down CT_* bots
Specifically, turn down:
* Perf-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Release-All-CT_BENCH_1k_SKPs
* Perf-Ubuntu14-Clang-Golo-GPU-QuadroP400-x86_64-Release-All-CT_BENCH_1k_SKPs
* Test-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Debug-All-CT_DM_100k_SKPs
* Test-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Debug-All-CT_DM_1m_SKPs
* Test-Ubuntu14-Clang-GCE-CPU-AVX2-x86_64-Debug-All-CT_IMG_DECODE_100k_SKPs

Also deletes the no longer needed recipe_modules:
* ct
* isolate
* skia_swarming
* swarming
* swarming_client

Bug: skia:8455
Bug: skia:6704
Change-Id: Ia4912830909081d060f7361706d16fd751b3bda0
Reviewed-on: https://skia-review.googlesource.com/c/160764
Commit-Queue: Ravi Mistry <rmistry@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-10-09 15:05:24 +00:00
Kevin Lubick
8e9750d3c5 Add CanvasKit build
Building CanvasKit uses very similar logic to PathKit, so there
was a fair amount of copy/paste/customize.

Fixes the name of skia.js/wasm -> canvaskit.js/wasm and
adds a package.json to formally track versions.

Also move PathKit helper scripts to align better.

Docs-Preview: https://skia.org/?cl=160463
Bug: skia:
Change-Id: Ie75b30592dcc4d520dca41f6f5579006aaa8849b
Reviewed-on: https://skia-review.googlesource.com/c/160463
Reviewed-by: Eric Boren <borenet@google.com>
2018-10-09 13:56:56 +00:00
Kevin Lubick
35b87a5b44 Add Build and Test jobs for SKQP using docker.
Uses Docker to compile an APK and then run it on an emulator.

We use a specialized image for build (includes Clang, etc)
And then the 3rd party base image for just the test (which
has the emulator and SDK on it).

Bug: skia:7578, skia:7692
Change-Id: I948e0b091868e7173b00e3affd7c3d59a5cd1ec2
Reviewed-on: https://skia-review.googlesource.com/c/159681
Reviewed-by: Stephan Altmueller <stephana@google.com>
Reviewed-by: Hal Canary <halcanary@google.com>
2018-10-08 19:17:25 +00:00
Kevin Lubick
4968843293 Add BuildStats pipeline for PathKit binaries
This should be extensible to do something similar
for libskia and other outputs.

Bug: skia:
Change-Id: Id9f30a82f4eb0e7ce868a32409b1be429917e7f6
Reviewed-on: https://skia-review.googlesource.com/c/160220
Reviewed-by: Eric Boren <borenet@google.com>
2018-10-08 18:15:32 +00:00
Nodir Turakulov
473b40b7ca Populate repo_path_map
checkout/api.py populates patch_projects mapping which has no effect.
All of its usages were migrated to repo_path_map mapping.
Populate repo_path_map instead.

R=rmistry@chromium.org

Bug: 694348
Change-Id: I4fc6fe86565f75f4b4b5b5ca041f584d30fcd8a5
Reviewed-on: https://skia-review.googlesource.com/155632
Auto-Submit: Nodir Turakulov <nodir@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-09-19 19:59:21 +00:00
Eric Boren
858f648bda [infra] Update recipe deps, fix usage of bot_update
Bug: skia:
Change-Id: I3829035a33a3bf147dd4ca90a0a45443a5b28eb6
Reviewed-on: https://skia-review.googlesource.com/154042
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2018-09-12 18:58:29 +00:00
Kevin Lubick
1b5ece0f06 Add mesa_intel_driver asset and dockerfile for creating
This deletes the previous hand-built drivers and the
distinction between a debug and non-debug driver.

Bug: skia:
Change-Id: Ia733783d703da803f76361c61b938d9ce70c88f0
Reviewed-on: https://skia-review.googlesource.com/150163
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2018-09-11 21:30:33 +00:00
Eric Boren
3867d59050 [infra] Revert broken recipe rolls, add test for missing patch_ref
A recent upstream CL caused our trybots to stop providing the
--patch_ref flag to bot_update:
https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1174988

Unfortunately, we did not have a "normal" trybot as part of our tests,
so we did not catch it during the roll:
https://skia-review.googlesource.com/c/skia/+/151984

Bug: skia:
Change-Id: I2a02a2e1923715a685448ce5f4d58a93de51c3ef
Reviewed-on: https://skia-review.googlesource.com/152741
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Edward Lemur <ehmaldonado@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-09-07 19:54:48 +00:00
Mike Klein
5b741e19c2 remove -k 0 from builds
We added this a while ago while debugging some many-files-failing
build failures, but keeping -k 0 now just makes single failures
harder to find in the log.  Now the first failure will stop the
build and be at the bottom of the log.

Change-Id: I1ed2825f2c64702a228903067230356f09b90046
Reviewed-on: https://skia-review.googlesource.com/152589
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2018-09-07 18:48:55 +00:00
recipe-roller
33dc0dc9f6 Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/01f0c698fb898168940718c5616ed3f6bb6c1b18 bot_update: Specify the target branch for patch_refs. (ehmaldonado@chromium.org)


R=rmistry@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ibd4e7c583706b717ab2b0db68d619ed914bf8c5d
Reviewed-on: https://skia-review.googlesource.com/151984
Reviewed-by: Edward Lemur <ehmaldonado@google.com>
2018-09-05 22:39:40 +00:00
Kevin Lubick
82999c037e Add docker-based infrastructure for Gold/lottie-web integration
This adds 2 docker containers (based on the ones used for PathKit
added in https://skia-review.googlesource.com/c/skia/+/147042)
which bundle Chrome and puppeteer to allow the lottiecap.js
to be run anywhere.

This adds a recipe (test_lottie_web.py) to drive the docker
container and do a little bit of set-up (and a few docs/bug
fixes discovered in the test_pathkit.py that it was based on).

Additionally, this modifies lottiecap.js to support POSTing
output to a running go server (again, the same as PathKit)
which has the image data hashed and the metadata added to
a large JSON output.

This re-works driver.html to avoid re-loading the JSON object
25 times. The performance boost is important because, right now,
the lottie files are processed individually.

In a future CL, I want to address the two TODOs in
lottie-web-aggregator.go

Bug: skia:8108
Change-Id: I100c9ce23dcc5033a27287211cbf0db898960da9
Reviewed-on: https://skia-review.googlesource.com/149282
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-08-28 15:16:22 +00:00
Ben Wagner
31629a8a32 [infra] Rename PowerVR jobs to be consistent.
Add "PowerVR" to GT7600, GT7800, and GX6450 (iOS jobs).

Add model number G6430 to NexusPlayer.

Change-Id: Id0beb9e25ac793378fcd353836a43b2ea9db1aef
Reviewed-on: https://skia-review.googlesource.com/148668
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-08-23 12:21:19 +00:00
Ben Wagner
7ea54289d2 Remove extra Mac CPU jobs.
This is a followup to
https://skia-review.googlesource.com/c/skia/+/145431

Also clean up old job names in recipe expectations.

No-Try: true
Change-Id: Ic63a64a98fb39076680941bb2415b7bb64415179
Reviewed-on: https://skia-review.googlesource.com/148671
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-08-22 18:44:24 +00:00
Kevin Lubick
f14a3c059f [PathKit] Add asm.js build and test jobs
Consolidates the karma files into one for docker/asmjs/wasm and all
combinations.

The asm.js build seems to have some small imprecisions that we didn't
see as much as with WASM, probably due to JS limitations/differences
to c++'s floats.

To address these, I've marked some (5) tests in PathOps* as flaky
because they fail on Release, Debug or Test versions of the asm.js build.

Other then that, asm.js seems basically identical to the WASM.

WASM is much smaller, 416k vs 877k and seems to load faster (not
measured).

Note to reviewers:
example.html was copied from npm-wasm version, so doesn't need
further review.

Bug: skia:8216
Change-Id: Ib92b90fa6c598de85a0be319d46b25693ae5aaa4
Reviewed-on: https://skia-review.googlesource.com/148396
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-08-22 17:19:10 +00:00
recipe-roller
16c8c54cec Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/7de5f08c459c9d66880cacb1253961009d7feee3 bot_update: remove --gerrit_repo and --gerrit_ref. (jbudorick@chromium.org)


R=benjaminwagner@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I94c3a040ec5a9606a75a6dc9856e1de686772820
Reviewed-on: https://skia-review.googlesource.com/147811
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: John Budorick <jbudorick@chromium.org>
2018-08-17 19:10:16 +00:00
Kevin Lubick
a0ba612bb2 [PathKit] Adding test infrastructure to support Gold output
To get the gold images out of the browser tests, this adds
testReporter.js and pathkit_aggregator.go.  testReporter bundles
up the output as a base64 encoded PNG and sends it over the local
network to pathkit_aggregator.  pathkit_aggregator will keep
a list of test results reported in this way and write the PNGs
to /OUT of the container (which is the swarming output directory).
Finally, after all the tests are run, the helper script "test_pathkit.sh"
makes a POST request that creates the JSON file that gold expects
(following the schema https://github.com/google/skia-buildbot/blob/master/golden/docs/INGESTION.md)

pathkit_aggregator takes many command line arguments which control
the keys that Gold needs in order to ingest and handle the data.
Of note, this creates a new set (i.e. source_type) of gold images
called "pathkit", which will distinguish it from "gm", "image", etc.

There will be at least 2 sub-sets of "pathkit" images, "canvas" and "svg",
(representing the 2 output types of PathKit).  This CL doesn't
quite handle SVG yet, as it needs a way to convert SVG to PNG in the
browser and will be addressed in a follow up CL.

A "standard" gm is sized at 600x600. This was arbitrarily picked.

Note that the functions in testReporter.js return Promises based
on the fetch requests to post the data. This eliminates the race
condition between the /report_gold_data and /dump_json since
running the karma tests won't return until all reports are done.

Other changes of note:
 - Adds go to karma-chrome-tests container.
 - renames recipe_modules/build/wasm.py -> pathkit.py to be consistent with
the name of test_pathkit.py and make for easier grepping.
 - Increases the JS test timeout to 10s (up from 5) to hopefully avoid
the flakes seen in the Debug Test.

Bug: skia:8216
Change-Id: Ic2cad54f3d19cc16601cf2e9a87798db1e6887a2
Reviewed-on: https://skia-review.googlesource.com/147042
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-08-15 19:25:42 +00:00
Ben Wagner
30a4e3da4b Add Win OpenCL Build job.
Bug: skia:8081
Change-Id: Ibcb82389668bd9ea7395e498696417d5701761c0
Reviewed-on: https://skia-review.googlesource.com/140782
Commit-Queue: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-08-08 00:27:48 +00:00
Kevin Lubick
641bf8745d [PathKit] Add more Path2D functionality and move some methods to be members
Adds arc, arcTo, rect and Path2D names for quadTo, cubicTo, close.

Adds conic verb support (approximated with 2 quads).

Breaking changes:
Some functions have been moved to be member functions:
PathKit.Simplify(path) -> path.simplify()
PathKit.ToCanvas(path, ctx) -> path.toCanvas(ctx)
PathKit.ToSVGString(path) -> path.toSVGString()
PathKit.ToPath2D(path) -> path.toPath2D()
PathKit.ToCmds(path) -> path.toCmds()
PathKit.ResolveBuilder(builder) -> builder.resolve()
PathKit.GetBoundaryPathFromRegion(region) -> region.getBoundaryPath()

Pathkit.ApplyPathOp(pathOne, pathTwo, op) still exists, but there's
now also pathOne.op(pathTwo, op) for cases when that's easier.

As per custom with version 0.x.y projects, I'm bumping the
minor version (in npm) for these breaking changes instead of the
major version (which will happen when we are version >= 1.0.0).

This also has some small improvements to the output code size.
The biggest jump was from enabling the closure compiler on the
helper JS, which trimmed it down by about 40%. Using the closure
compiler requires the JRE on the bots, which prompted the emsdk-base
image change.

Bug: skia:8216
Change-Id: I40902d23380093c34d1679df0255bcb0eaa77b01
Reviewed-on: https://skia-review.googlesource.com/145420
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-08-06 19:07:12 +00:00
Eric Boren
9d834581da [infra] Add new go_deps asset
This contains the Go code dependencies of our infra repo and will be
used to insulate us from upstream changes which break us due to API
changes, etc.

Bug: skia:
Change-Id: I6ce36a4e41b6d7686fe2598ba980640854cd4f11
Reviewed-on: https://skia-review.googlesource.com/145158
Commit-Queue: Eric Boren <borenet@google.com>
Reviewed-by: Ravi Mistry <rmistry@google.com>
2018-08-03 18:33:24 +00:00
Ben Wagner
cdfa16d086 Use XCode from CIPD. Include xSAN dylibs in Build task isolated output.
Change-Id: I0eb3dcc4d38eb2aeab22d1df1515e499cf21dc62
Reviewed-on: https://skia-review.googlesource.com/144608
Commit-Queue: Eric Boren <borenet@google.com>
Auto-Submit: Ben Wagner <benjaminwagner@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-08-03 17:14:14 +00:00
Kevin Lubick
b3d0e3e1d9 Add Debug version of PathKit
This adds a job to build it and adds it to the npm
under /bin/debug.

The debug build is useful for clients because it
has all the debug symbols, which makes it possible to
see which WASM calls are taking the longest when using
DevTools' Performance testing.

Bug: skia:8216
Change-Id: I3068cb395f29c1de927508cf15c419f5af284eb7
Reviewed-on: https://skia-review.googlesource.com/145337
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-08-03 16:54:20 +00:00
Kevin Lubick
30cc00c642 Add job for building PathKit to WASM using Docker
This creates a new named cache docker for this and future
docker-based jobs to use, to avoid permission snafus with
the normal "work" named cache.

Remove old WASM build, which was using the janky CIPD
emsdk asset and wasn't really exercising what we needed.

Bug: skia:8216
Change-Id: I993bba38b4978ca5eebb97e5b5b21729d55a072d
Reviewed-on: https://skia-review.googlesource.com/145140
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2018-08-03 15:08:42 +00:00
recipe-roller
da77c7f91f Roll recipe dependencies (nontrivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


Please review the expectation changes, and LGTM+CQ.


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/5300616351f523c605de80f5ece8c29321a78847 bot_update: expose patch_refs as an option to ensure_checkout. (jbudorick@chromium.org)


R=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3719ebfe726d6662c0e3b8a9f4e21ca62000a292
Reviewed-on: https://skia-review.googlesource.com/145144
Reviewed-by: John Budorick <jbudorick@chromium.org>
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2018-08-03 11:20:51 +00:00