skia2/infra/bots/recipe_modules
Kevin Lubick 52b040968a [infra] Remove Python2 when running CI tasks
This is similar to https://skia-review.googlesource.com/c/buildbot/+/538218

BIG CHANGE: If we fail to download uninteresting hashes
(because Gold is down or the script otherwise fails), we
now crash/fail our Test-* tasks. In an early version of
this removal, that lack of failure masked an issue with
the script (urllib2 is not in Python3) and nearly would
have landed. Failing loudly is better, IMO.

This removes the symbolize_stack_trace script, which
stopped working with Python3 for reasons unknown.
If we need the behavior, we can rewrite it.
Relatedly, we removed 4 jobs, the Docker ones, because
we will not get much value out of them as we migrate
towards Bazel and removing the symbolization script
was tricky to get right.

There are a few cleanups around copypasta that I noticed
when combing through the recipes.

Change-Id: I8dfab416e964fd494267800b4ebe216061895f19
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/538636
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2022-05-17 20:26:48 +00:00
..
build Ensure skia_gl_standard is correct when skia_use_angle is true 2022-05-10 17:13:15 +00:00
builder_name_schema [infra] Add BazelBuild task to build CanvasKit on the CI with Bazel 2022-05-06 17:54:08 +00:00
checkout [infra] Remove Python2 when running CI tasks 2022-05-17 20:26:48 +00:00
docker [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
doxygen [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
env [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
flavor [infra] Remove Python2 when running CI tasks 2022-05-17 20:26:48 +00:00
git [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
gold_upload [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
gsutil [infra] Create and use CIPD package for gsutil 2022-05-17 19:42:58 +00:00
infra Update Go CIPD packages to v1.18. 2022-03-22 02:22:04 +00:00
run [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
vars [python3] Reland recipes -> python3 changes 2021-12-01 13:04:03 +00:00
README.md Increase ClangTidy code coverage by enabling features. 2020-08-03 15:37:30 +00:00

Skia Recipe Modules

This directory contains recipe modules designed to be used by recipes (see infra/bots/recipes). They are all Skia-specific and some are interrelated:

  • builder_name_schema - Helps to derive expected behavior from task (formerly builder) names.
  • core - Use as a starting point for most recipes: runs setup and sync steps.
  • ct - Shared Cluster Telemetry utilities.
  • flavor - Allows the caller to specify a high-level command to run, leaving the platform-specific details to be handled by the specific flavor module.
  • infra - Shared infrastructure-related utilities.
  • run - Utilities for running commands.
  • swarming - Utilities for running Swarming tasks.
  • vars - Common global variables used by Skia recipes/modules.

When you change a recipe module, you generally need to re-train the simulation test:

$ python infra/bots/infra_tests.py --train

Or:

$ cd infra/bots; make train

Each recipe module contains a few files:

  • api.py - This is the meat of the module.
  • __init__.py - Contains a single DEPS variable, indicating the other recipe modules on which this module depends.
  • example.py - Optional, this file contains examples which demonstrate how to use the module and should contain enough tests to achieve 100% coverage for the module. The tests are run using the recipes test command above.