skia2/infra/bots/recipe_modules
Weston Tracey 505dc179b0 Move Pixelbook build jobs to Docker Debian9.
-Make generated build tasks for Pixelbook use Debian9...Docker and rename those in jobs.json
---Non-Pixelbook ChromeOS build tasks now use regular Debian10, as they seem to handle it fine.
---Removed 2 Build-Debian9-Clang-arm-.*-Chromebook_GLES jobs, since they are now unused.
-Added docker logic to chromebook.py, refactored to handle the differing directory structure (TODO to simplify)
---Added docker-chromeos-compile.sh to run in the container.
---util function to convert to string that can be used in the python or passed to bash (cribbed from docker.py, will consolidate in later CL)
-Prerequisite for upgrading the last 10% of the fleet to Debian10

Bug: skia:9438
Change-Id: I0727aad2d00383e568ddbeea98d56d42bcca26e5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/282678
Commit-Queue: Weston Tracey <westont@google.com>
Reviewed-by: Eric Boren <borenet@google.com>
2020-04-14 16:05:34 +00:00
..
build Move Pixelbook build jobs to Docker Debian9. 2020-04-14 16:05:34 +00:00
builder_name_schema Changing ~everything (mostly recipe related stuff) to reference Debian10 jobs 2020-04-07 12:18:06 +00:00
checkout Changing ~everything (mostly recipe related stuff) to reference Debian10 jobs 2020-04-07 12:18:06 +00:00
docker Changing ~everything (mostly recipe related stuff) to reference Debian10 jobs 2020-04-07 12:18:06 +00:00
doxygen [recipes] Minor import cleanup 2020-03-06 19:06:10 +00:00
env Roll recipe dependencies (nontrivial). 2019-06-03 11:25:16 +00:00
flavor narrow use of fast_unwind_on_malloc=0 2020-04-08 15:18:18 +00:00
git Roll recipe dependencies (nontrivial). 2019-06-03 11:25:16 +00:00
gsutil Roll recipe dependencies (nontrivial). 2019-06-03 11:25:16 +00:00
infra [recipes] Minor import cleanup 2020-03-06 19:06:10 +00:00
run [recipes] Minor import cleanup 2020-03-06 19:06:10 +00:00
vars Changing ~everything (mostly recipe related stuff) to reference Debian10 jobs 2020-04-07 12:18:06 +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.