Commit Graph

4682 Commits

Author SHA1 Message Date
Jim Van Verth
c695cee3fc Ignore flaky encode-platform GM for mtltestcompile jobs
Change-Id: Ic2436cc47b6a5820ec4bbce7b4ac1d7cf1ef203d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/529133
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Auto-Submit: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-04-11 22:13:33 +00:00
Joe Gregorio
7216659f71 Add RTX3060 Win10 jobs.
Change-Id: I007c6e45eaa2d9a8e091f9b1ee235af26c938581
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521840
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2022-04-11 15:09:11 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
1a668363fd Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: I8d0d2a82b3b60d674b9c339af6fa7b1a0f1a380e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528957
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-04-10 08:23:09 +00:00
Greg Daniel
3680698e9f Add basic Vulkan setup and draw example program.
Change-Id: Ib3ff7d6f67e5c6389da5c0b640bd2396d7615501
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/527506
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-04-08 18:26:21 +00:00
Kevin Lubick
7c18d94692 [infra] Update dep of infra repo
We need to pick up changes to gazelle
https://skia-review.googlesource.com/c/buildbot/+/528697

$ go get go.skia.org/infra@dc0abbc759
$ go mod download
$ make -C infra/bots train
$ make -C bazel gazelle_update_repo
$ make -C bazel generate

The last step was just to make sure no current BUILD.bazel
files changed as a result of updating Gazelle (they did not)

Change-Id: I01b009cdc9af850cebf4f5632a6bd7e371d1a6e4
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528816
Reviewed-by: Ravi Mistry <rmistry@google.com>
2022-04-08 17:25:24 +00:00
Ben Wagner
4a21a5a5bb Avoid calling longjmp with arm64 ASAN.
Bug: skia:13155
Change-Id: Ic3666d2b3cb2b1911551e47e2d42331228482000
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528596
Auto-Submit: Ben Wagner <bungeman@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Derek Sollenberger <djsollen@google.com>
2022-04-08 15:01:55 +00:00
Kevin Lubick
503a2bd982 Update Skia to use the new combined Dawn+Tint repo
Includes a manual roll of Dawn, as well as tweaks to the Tint build
overrides.

Dawn needs git in order to generate a header that has the
version of Dawn compiled in. If we use Dawn's GN rules to
build it, we need git to generate that file.

Our (now updated) Bazel rules to build Dawn do not need to
do this because we (Skia) do not use this file [1]

[1] https://dawn.googlesource.com/dawn/+/088a600b03679cd20991f145173a573ed9c03480/src/dawn/common/BUILD.gn#177

Change-Id: Id19fdbb9b53fdad2397a0044a4a314b1444faeb0
Cq-Include-Trybots: luci.skia.skia.primary:Build-Debian10-Clang-x86_64-Debug-Dawn,Build-Win-Clang-x86_64-Release-Dawn
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528157
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-07 20:31:14 +00:00
Kevin Lubick
eabed6ac67 [infra] Update GCC Docker images to have Python3
Change-Id: I870cc04f9b45a77caa39b0996420fec622a79cf5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528336
Reviewed-by: Brian Osman <brianosman@google.com>
2022-04-07 13:54:52 +00:00
Eric Boren
b019e94c44 [infra] Remove UpdateGoDeps
Bug: skia:10389
Change-Id: Ie2cbca0663227815ceca8734737515228376c8d0
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/528036
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2022-04-07 13:28:34 +00:00
John Stiles
156952dc7b Add new sksl-precompile binary to tools.
This binary will be compiled when the gn flag `skia_compile_modules` is
set. sksl-precompile will replace for skslc for module precompilation in
a followup.

Change-Id: I217127169b091f97c2e4d11e0deb655ceac84425
Bug: skia:13164
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/527838
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
2022-04-06 19:45:07 +00:00
Ravi Mistry
c5c38dec95 [infra] Move TSAN_Vulkan jobs from Golo machines to Skolo
This change does the following:
* Removes 2 Golo Test-TSAN_Vulkan jobs because their counterparts already exist in Skolo.
* Moves 1 Golo Test-TSAN_Vulkan job to Skolo.

Bug: skia:13129
Change-Id: I28b40320c831d109aa4f8778ddc1d03be9473592
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526916
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2022-04-05 19:57:24 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
2fff9bf2bf Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: Idc0b092dc5a35dca3a41bd8e4348e23016d87fbc
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/527418
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-04-04 21:42:58 +00:00
Eric Boren
08a22ac147 [infra] Make Go asset use "copy" install mode
This fixes an issue with "go embed" not liking symlinks.

Bug: skia:13126
Change-Id: I994751e63ec467e37555f5bfc192243498b0d6cd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/527057
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
2022-04-04 14:00:04 +00:00
Brian Osman
087b5a2fff Disable all unit tests on CommandBuffer Test bots
Temporary workaround for crashes that are blocking the Chromium -> Skia
roller.

Bug: skia:13040
Change-Id: I684eb0d0f63fc7e7949a1205ceef16a44eaf5148
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526679
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2022-04-01 21:03:17 +00:00
Ravi Mistry
30a50f3df5 Use updated GPU driver version for GOLO bots
Bug: chromium:1309590
Change-Id: I2542bdfd5bc18f73fb07f6248d84a5eb0c5ad069
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524001
Reviewed-by: Robert Phillips <robertphillips@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2022-04-01 18:01:23 +00:00
John Stiles
ee9ecfa478 Disable test OutParamsAreDistinctFromGlobal on Wembley.
Change-Id: I8a2bd5596b10f76b77cfa834cc5d592c249457ee
Bug: skia:13115
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526256
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2022-03-31 14:12:03 +00:00
John Stiles
61e7d06c48 Remove skia_compile_processors gn flag.
This flag was meant to control compilation of .fp files, which no longer
exist. Its only meaning now is a synonym for `skia_compile_sksl_tests`.
If you had `skia_compile_processors` enabled in your gn args, you can
replace it with `skia_compile_sksl_tests`.

Change-Id: I49fe58aaf0e60d3998ec43c51c1372a6acad980a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526028
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-03-30 22:01:30 +00:00
John Stiles
d370e89353 Disable test OutParamsAreDistinctFromGlobal on some platforms.
Windows + Intel GLSL and Android + Adreno GLSL do not recognize aliasing
against the global and fail the test.

Change-Id: I4c1f950f7addf6691a8db989d93b727dbc97742e
Bug: skia:13115
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/526023
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-30 19:58:38 +00:00
Kevin Lubick
a43a68a015 [infra] Switch Perf-Debug-ASAN for Perf-Release-ASAN
Also move some more Perf-ASAN jobs to Test-ASAN

Followup to http://review.skia.org/525191

Change-Id: Ic2df058c91f4f07311e4afc7fb68a6b5ed12f592
Bug: 1309590
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525836
Reviewed-by: Greg Daniel <egdaniel@google.com>
2022-03-30 18:23:32 +00:00
Kevin Lubick
556ca8f7ee [includes] Enforce IWYU for //tools/debugger/...
This moves the Build-Debian10-BazelClang-x86_64-Release-IWYU
job from experimental to on when a file in one of the
folders that we enforce IWYU is modified (currently
for svg, sksl, and now, debugger).

Change-Id: Ia6fe1e7b30fc486db3eb081b6a64bc4c250cbf0b
Bug: skia:13052
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525796
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-30 13:53:13 +00:00
Kevin Lubick
f5ae4c7e15 [bazel] Use RBE when building task drivers
Local measurements show that using RBE (with a warm cache)
vs local can result in a 2x faster build.

No-Try: true
Change-Id: Ib900a90564f105de848c9aeb0b745e5fec77da53
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525637
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-29 18:01:33 +00:00
Kevin Lubick
8442ca1858 [bazel] Run RBE CI tasks on 16 core machines
Because these tasks use RBE, the machines they run on do not
need to be as powerful. In practice, we are seeing a lot of
the build steps be a hit on the remote-cache, so we don't need
the number of Bazel jobs to be as high, so I've arbitrarily
set it to be 100. We can revisit this later if we notice
things are slow.

To facilitate this change, I had to add cloud-platform scope
to all our GCE VMs. There is a script in the infra repo [1]
that helped with this:
go run ./scripts/add_gce_scopes/add_gce_scopes.go \
  --zone us-central1-c --project skia-swarming-bots \
  --scope https://www.googleapis.com/auth/cloud-platform \
  --instance skia-e-gce-100,skia-e-gce-101,...

[1] b103ea24f5/scripts/add_gce_scopes/add_gce_scopes.go

No-Try: true
Change-Id: I7f1e7b1e9e4a22f5383cf9ce1c8c0350e62b5283
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525577
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-29 18:00:34 +00:00
Kevin Lubick
a753b0da89 [infra] Move ASAN jobs from Golo machines to Skolo
There are a few driver issues on the Golo machines that we
are trying to work out.

This removes 2 Perf-ASAN jobs, as one is probably sufficient
given that we have Test-ASAN variants too.

Change-Id: Id2aa492a64706562286b820709f082f2374e2222
Bug: 1309590
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525191
Reviewed-by: Ravi Mistry <rmistry@google.com>
2022-03-29 15:09:19 +00:00
Greg Daniel
e09592ede7 [graphite] Upload graphite results from bots.
Bug: skia:12974
Change-Id: I3524b7a7d15e5a4c55d6af5a6a1a0e0113ea76e3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525319
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-29 13:06:57 +00:00
Kevin Lubick
1ddbe1aa69 [bazel] Use bigger disk when compiling task drivers
The root disk on our GCE VMs typically only have 15GB
and have a much larger disk attached to them.

We want the Bazel cache to be on this larger disk so
we don't run out of disk space as often.

BuildTaskDrivers was not doing that, but the task
drivers which use Bazel are.

Change-Id: I0f797188576707341972a1db7418e8916633333c
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525456
Reviewed-by: Ravi Mistry <rmistry@google.com>
2022-03-29 12:47:06 +00:00
Kevin Lubick
a3ff876e16 [bazel] Add CQ job to warn if Bazel files need to be regenerated.
This adds Housekeeper-PerCommit-CheckGeneratedBazelFiles

Error and resolution http://screen/38UwJ28vtucu75Z

Change-Id: If12a6a98900fc492f0809b28fc688789c18edc15
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/525237
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-28 22:16:30 +00:00
Kevin Lubick
c40158ab98 [bazel] Add CI job that uses RBE to enforce includes
The toolchain now uses extract_ar from
https://skia-review.googlesource.com/c/buildbot/+/524764
which is a static executable to extract the .deb files.
This was necessary because the llvm-ar that had previously
been used requires glibc 2.31+ to run, but our Debian10
machines on Swarming have an older version (2.28).

A longer-term fix is to have Bazel support .ar files,
which I plan to attempt to contribute this week.

The RBE task will be added as an experimental CQ job, to
see how it handles the load of running often. With the
remote execution cache, I hope it performs well, once
the toolchains are cached on both the Swarming
machines and in the RBE workers.

Note: We had to add several files to the CAS spec
(see compile_cas.go) which are required for Bazel to work.

Change-Id: Ie70c70d5f33768c957760f9eeb7835025109b487
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524759
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-03-28 13:56:16 +00:00
Robert Phillips
6475432767 [graphite] Add failure mode to Recorder::snap
Bug: skia:12701
Change-Id: Ib7e52f26b31cfed8fb4da1929755035a69951ca5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/524220
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2022-03-25 17:49:53 +00:00
Kevin Lubick
db95dbe93c [infra] Remove flaky ProcDump jobs
Originally rolled out in https://skia-review.googlesource.com/c/skia/+/113265/
but currently flakes a bit and does not seem to provide any useful data.

Change-Id: Id73e0d4e3b21190a85f0189fd2ed623ceb803e1e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/523356
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-22 14:20:16 +00:00
Ravi Mistry
1d8acd85f6 Trigger all Graphite bots when a change lands in experimental/graphite/.*
Change-Id: I7900eec79e5608bb0456ab5681bc8015b768ead5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522741
Reviewed-by: Michael Ludwig <michaelludwig@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2022-03-22 12:28:34 +00:00
Leandro Lovisolo
47cf526bec Update Go CIPD packages to v1.18.
Go 1.18 is picky about the location of the GOROOT, so some additional changes were necessary, see //infra/bots/recipe_modules/infra/api.py. These changes are mirrored in the Skia Infrastructure repo, see https://skia-review.googlesource.com/c/buildbot/+/521337.

Bug: skia:13063
Change-Id: I325460ff848a8ce8687f7d4a198d49b6e5f41486
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521338
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Leandro Lovisolo <lovisolo@google.com>
2022-03-22 02:22:04 +00:00
Leandro Lovisolo
10258645fc Mockery CIPD package: Build from source to support Go 1.18.
See comments in create.py for rationale and details.

This compatibility issue will likely be fixed in a future Mockery version, but since we're sticking with with v2.4.0, building from source with the necessary changes seems like the most straightforward option.

Note: This CL should not cause any diffs in generated mock files.

Bug: skia:13063
Change-Id: Ia9b2c48ea64d85244c09c75a5d424e09bdac7a2d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522098
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Leandro Lovisolo <lovisolo@google.com>
2022-03-22 00:50:34 +00:00
Joe Gregorio
b34e83e4c6 Add Linux RTX3060 jobs.
Change-Id: If2e7bfd93b916663e568e7d761cd891d0ac2303a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/521838
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Joe Gregorio <jcgregorio@google.com>
2022-03-21 15:35:07 +00:00
Kevin Lubick
dd3a6894f4 [infra] Use ATL Golo Windows machines
Change-Id: I91f6537f3eda06b311559c3ed994fb063590b50a
Bug: 1289453
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522177
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-03-21 11:48:36 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
ecd2a66e6f Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: Ifdce7b755509431126d260e1904464ed4d4e72bb
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522596
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-03-20 08:12:34 +00:00
Kevin Lubick
ac8c554dbe [infra] Use ATL Golo Linux machines
Change-Id: I836eebcd16d55a86eca2020f7bdbec11889a1920
Bug: 1289453
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/522176
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-03-18 13:34:04 +00:00
Greg Daniel
6dcb24b811 [graphite] Add nanobench bots.
Bug: skia:12974
Change-Id: I6ec7736edc871241b0cf78413b0d5f7ff9abd8c5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/520736
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Greg Daniel <egdaniel@google.com>
2022-03-15 19:00:46 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
6d19271fb1 Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: I2c38b1603ba2e3e25264c4a55fafa1947ff0c486
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/520199
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-03-13 07:26:46 +00:00
Arman Uguray
e70f2e0e0f [sksl][test] Add more folding tests for side-effecting expressions
Moved the MatrixFoldingES2.sksl test case for matrix construction with
side-effects into a new PreserveSideEffects.sksl test and added new test
cases for various vector and matrix types and constructors. The new test
is written such that none of its contents should be folded away.

Note: This test does not pass on NVIDIA GPUs when using OpenGL as
discussed in skia:13035. Notably, NONE of the increments are executed on
those GPUs as ALL increment expressions seemingly get subjected to
constant-folding. The test is disabled on NVIDIA GPU bots.

This also means that the remaining MatrixFoldingES2.sksl tests now work
on NVIDIA GPUs when using OpenGL (with the exception of Tegra3 + OpenGL
ES).

Bug: skia:13035, skia:11919
Change-Id: I561bb62fe2b6b814ba80fbc492d3885bbcd6b65b
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/518278
Reviewed-by: John Stiles <johnstiles@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-03-10 18:06:12 +00:00
Jim Van Verth
bdbb92a721 [graphite] Add some Intel Mac bots to test Graphite
Bug: skia:13033
Change-Id: I2b4a30f8adb927966ab20e8175a0dcf15fb3ed1e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/518636
Reviewed-by: Erik Rose <erikrose@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2022-03-09 18:12:50 +00:00
skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com
f029354f16 Update SKP version
Automatic commit by the RecreateSKPs bot.

Change-Id: I8be10a4093ac38d4c98223e601c89e8c204efcce
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/516559
Commit-Queue: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
Bot-Commit: skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com <skia-recreate-skps@skia-swarming-bots.iam.gserviceaccount.com>
2022-03-06 07:59:41 +00:00
Ravi Mistry
9a822433df Pull the latest doxygen image
Bug: skia:13020
Change-Id: I32ac1f7593f85da76a883d795cd9803f55a42f24
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/516076
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
2022-03-04 19:08:05 +00:00
Kevin Lubick
5fb37db69f [bazel] Use bazel to build task drivers
One very important, but agonizing to discover, change was
to go_repositories.bzl. Without it, we see cryptic errors like:
external/org_chromium_go_luci/cipd/api/cipd/v1/BUILD.bazel:22:17: no such package '@org_chromium_go_luci//go.chromium.org/luci/cipd/api/cipd/v1': BUILD file not found in directory 'go.chromium.org/luci/cipd/api/cipd/v1' of external repository @org_chromium_go_luci. Add a BUILD file to a directory to mark it as a package. and referenced by '@org_chromium_go_luci//cipd/api/cipd/v1:api_go_proto'

The rest of these changes are very similar to
https://skia-review.googlesource.com/c/buildbot/+/514074
which also has justification for the use of task drivers,
even in a Bazel-driven world.

All the BUILD.bazel files under infra/bots/task_drivers were
generated by Gazelle.

Note that the infra/bots/BUILD.bazel can happily build and
package up the task drivers from the infra repo. The old
build_task_drivers tasks did this too, because we have some
task drivers that are used in both repos.

Change-Id: I13c46c62bc7a6a4bfe7935b28efbfb34caabb6f2
Bug: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/515296
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-03 16:12:18 +00:00
John Stiles
e11a14d17f Add workaround for LLVM crash in macOS 12 on Intel or M1.
The `break_loop` test causes LLVM to get confused and crash when
compiled on some GPUs. The crash goes away if we pass a literal 5
instead of a 5 that is computed at runtime. This also results in a
simpler test for SkVM, for better or worse, but we still have
coverage for dynamic loop exits in other tests.

LLVM crash: https://paste.googleplex.com/4718583155261440
Dangerous shader: https://paste.googleplex.com/4776089520963584

Change-Id: Ic6cbd55a36d2de58e5dd3459d4dfd74acdbc9f91
Bug: skia:13005
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/514538
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
2022-03-02 15:20:10 +00:00
John Stiles
7bc2701ae8 Disable SkSLUnaryPositiveNegative test on Mali 400 (Android One).
This GPU has lots of basic problems with matrices in GLSL, so this is
not entirely unexpected.

Change-Id: I21f663f7637f10320f7ce8a2a66e5e621bbca621
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/514776
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2022-03-02 15:10:18 +00:00
John Stiles
54b5ad00c5 Add bots for Metal on M1 Macs with macOS 12.
The LoopInt test fails in Metal on many devices with macOS 12, so it's
currently disabled.

Change-Id: I575b662ae543187d7062e0fba37afa6e80663fc5
Bug: skia:13005
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/514576
Auto-Submit: John Stiles <johnstiles@google.com>
Reviewed-by: Arman Uguray <armansito@google.com>
Commit-Queue: Arman Uguray <armansito@google.com>
2022-03-02 00:32:15 +00:00
Jim Van Verth
38de60ea95 Disable GrMeshTests on Intel Iris Plus
Bug: skia:7603
Change-Id: I2d0406b544d03efbd5caa165ecf2f099d8d73881
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/514217
Reviewed-by: Erik Rose <erikrose@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
2022-03-01 20:05:41 +00:00
Erik Rose
c396dd16ba [infra] Rename IrisPlus jobs so they don't contain commas.
That was making Gerrit unable to invoke the jobs; the regex for valid
jobs doesn't contain comma.

Change-Id: I9b8a42ab1d5b8ac204895388844bde88a604491f
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/514356
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Erik Rose <erikrose@google.com>
2022-03-01 19:02:17 +00:00
Kevin Lubick
4a826a9de5 [infra] Remove failing skpbench jobs
These have been failing for 9+ months

Change-Id: I9cc15298ee0ea1f2f1070affeeb5392ced376793
Bug: skia:12268
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/514276
Reviewed-by: Joe Gregorio <jcgregorio@google.com>
2022-03-01 17:58:25 +00:00
Kevin Lubick
acab911351 [bazel] Make use of test_on_env to spin up server for gms
In order to extract the PNG files produced by our CanvasKit gms,
we need our JS tests to POST them to a server which can write to
disk. The easiest way to do this is to use the test_on_env
rule defined in the Skia Infra repo for exactly this purpose.

This required https://skia-review.googlesource.com/c/buildbot/+/510717
to be able to configure the binary correctly and
https://skia-review.googlesource.com/c/buildbot/+/511862, for nicer
debugging so the skia-infra dep was updated via the following commands:
$ go get go.skia.org/infra@d8a552a29e
$ go mod download
$ make -C infra/bots train
$ make -C bazel gazelle_update_repo
This caused many automated changes to infra/bots/tasks.json

The flow is:
1. User types bazelisk test :hello_world_test_with_env
2. The test_on_env rule starts gold_test_env and waits
   for the file defined in $ENV_READY_FILE to be created.
3. gold_test_env starts a web server on a random port. It
   writes this port number to $ENV_DIR/port. Then, it
   creates $ENV_READY_FILE to signal ready.
4. test_on_env sees the ready file and then starts the
   karma_test rule. (Reminder: this is a bash script
   which starts karma using the Bazel-bundled chromium).
5. The karma_test rule runs the karma.bazel.js file (which
   has been injected with some JS code to fill in Bazel
   paths and settings) using Bazel-bundled node. This reads
   in the port file and sets up a Karma proxy to redirect
   /gold_rpc/report to http://localhost:PORT/report
6. The JS tests run via Karma (and do assertions via Jasmine).
   Some tests, the gms, make POST requests to the proxy.
7. gold_test_env gets these POST requests writes the images
   to a special Bazel folder on disk as defined by
   $TEST_UNDECLARED_OUTPUTS_DIR.
8. test_on_env identifies that the tests finish (because the
   karma_test script returns 0). It sends SIGINT to gold_test_env.
9. gold_test_env stops the webserver. The special Bazel folder
   will zip up anything inside it and make it available for
   future rules (e.g. a rule that will upload to Gold via goldctl).

Suggested Review Order:
 - bazel/karma_test.bzl to see the test_on_env rule bundled into
   the karma_test macro. I chose to put it there because it might
   be confusing to have to define both a karma_test and test_on_env
   rule in the same package but not be able to call one because it
   will fail to talk to the server.
 - gold_test_env.go to see how the appropriate files are written
   to signal the environment is ready and the handlers are set up.
 - karma.bazel.js to see how we make our own proxy given the
   port from the env binary. The fact that we could not create
   our own proxy with the existing karma_test rule was why the
   chain ending in https://skia-review.googlesource.com/c/skia/+/508797
   had to be abandoned.
 - tests/*.js to see how the environment is probed via /healthz
   and then used to make POST requests with data.
 - Everything else.

Change-Id: I32a90def41796ca94cf187d640cfff8e262f85f6
BUG: skia:12541
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/510737
Reviewed-by: Leandro Lovisolo <lovisolo@google.com>
2022-02-28 14:05:54 +00:00