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