README.md
1 Skia Recipe Modules
2 ===================
3
4 This directory contains recipe modules designed to be used by recipes (see
5 infra/bots/recipes). They are all Skia-specific and some are interrelated:
6
7 * builder_name_schema - Helps to derive expected behavior from task (formerly
8 builder) names.
9 * core - Use as a starting point for most recipes: runs setup and sync steps.
10 * ct - Shared Cluster Telemetry utilities.
11 * flavor - Allows the caller to specify a high-level command to run, leaving
12 the platform-specific details to be handled by the specific flavor
13 module.
14 * infra - Shared infrastructure-related utilities.
15 * run - Utilities for running commands.
16 * swarming - Utilities for running Swarming tasks.
17 * vars - Common global variables used by Skia recipes/modules.
18
19 When you change a recipe module, you generally need to re-train the simulation
20 test:
21
22 $ python infra/bots/recipes.py test run --train
23
24 Or:
25
26 $ cd infra/bots; make train
27
28 Each recipe module contains a few files:
29
30 * api.py - This is the meat of the module.
31 * \_\_init\_\_.py - Contains a single DEPS variable, indicating the other
32 recipe modules on which this module depends.
33 * example.py - Optional, this file contains examples which demonstrate how to
34 use the module and should contain enough tests to achieve 100% coverage
35 for the module. The tests are run using the recipes test command above.
36