52b040968a
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> |
||
---|---|---|
.. | ||
build | ||
builder_name_schema | ||
checkout | ||
docker | ||
doxygen | ||
env | ||
flavor | ||
git | ||
gold_upload | ||
gsutil | ||
infra | ||
run | ||
vars | ||
README.md |
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.