skia2/infra/bots/recipe_modules
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
..
build Add Correctness tests for CanvasKit 2018-10-16 14:32:28 +00:00
builder_name_schema Add BuildStats pipeline for PathKit binaries 2018-10-08 18:15:32 +00:00
checkout Track Skia's Code size in Flutter 2018-10-10 14:24:57 +00:00
doxygen [recipes] Rename some modules and files 2018-05-24 14:06:55 +00:00
env Rename example.py -> examples/full.py for all modules 2017-06-02 11:40:36 +00:00
flavor Add mesa_intel_driver asset and dockerfile for creating 2018-09-11 21:30:33 +00:00
git Use chrome-infra Git CIPD package 2017-06-06 12:45:11 +00:00
gsutil Upload multiple dm images at once 2018-01-17 12:29:26 +00:00
infra [infra] Add new go_deps asset 2018-08-03 18:33:24 +00:00
run [recipes] Move a lot of logic out of vars module 2018-05-18 11:58:14 +00:00
vars [infra] Update recipe deps, fix usage of bot_update 2018-09-12 18:58:29 +00:00
README.md Use new recipes.py test command 2017-04-18 13:57:56 +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/recipes.py test run --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.