skia2/infra/bots/recipe_modules
Kevin Lubick e9188850ec Revert "Revert "Disable extra CPUs during Nanobench""
This reverts commit 43307c09b9.

Reason for revert: Fixed this time.  Echo 1 > already online cpu
returns exit code 1, which makes python over-react.

Original change's description:
> Revert "Disable extra CPUs during Nanobench"
>
> This reverts commit 32af335e7a.
>
> Reason for revert: many unhappy android bots
>
> Original change's description:
> > Disable extra CPUs during Nanobench
> >
> > The previous experiment revealed that nanobench can
> > run on any of the online CPUs, so rather than put
> > the ones we don't need/want into powersave mode, just
> > disable them.
> >
> > Maybe in the future we can run CPU tests on the big
> > or LITTLE cpus to get perf data on higher end or
> > lower end cpus, but only if we get very stable
> > results from this.
> >
> > Bug: skia:7378
> > Change-Id: I057513a691093e7f73c0f5790e17fab1a5ec0bc4
> > Reviewed-on: https://skia-review.googlesource.com/84820
> > Reviewed-by: Kevin Lubick <kjlubick@google.com>
> > Commit-Queue: Kevin Lubick <kjlubick@google.com>
>
> TBR=borenet@google.com,mtklein@google.com,kjlubick@google.com
>
> Change-Id: I23c37a6bde631e95f0b4ae7277ec8fcf325a00e9
> Bug: skia:7378
> Reviewed-on: https://skia-review.googlesource.com/84921
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

No-Tree-Checks: true
Change-Id: Ie7f0a3dc6ba55c124c796aba16a0f0497f285f3a
Bug: skia:7378
Reviewed-on: https://skia-review.googlesource.com/84865
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2017-12-14 15:21:01 +00:00
..
builder_name_schema Add a GPU calmbench bot 2017-11-02 19:04:21 +00:00
core [recipes] Provide tokenized extra_config and use it most places. 2017-12-13 18:26:32 +00:00
ct Update CT bots to Debian-9.2 2017-11-29 18:45:05 +00:00
env Rename example.py -> examples/full.py for all modules 2017-06-02 11:40:36 +00:00
flavor Revert "Revert "Disable extra CPUs during Nanobench"" 2017-12-14 15:21:01 +00:00
git Use chrome-infra Git CIPD package 2017-06-06 12:45:11 +00:00
gsutil Update CT bots to Debian-9.2 2017-11-29 18:45:05 +00:00
infra Add new Bookmaker bot that runs nightly 2017-12-08 22:26:38 +00:00
isolate Manually roll recipe DEPS 2017-09-27 17:24:38 +00:00
run Store skiaserve binary in GS from Release Android compile bots 2017-12-12 22:37:05 +00:00
skia_swarming Manually roll recipe DEPS 2017-09-27 17:24:38 +00:00
swarming Manually roll recipe DEPS 2017-09-27 17:24:38 +00:00
swarming_client Manually roll recipe DEPS 2017-09-27 17:24:38 +00:00
vars [recipes] Provide tokenized extra_config and use it most places. 2017-12-13 18:26:32 +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.