Roll recipe dependencies (trivial).

This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (depot_tools, infra, recipe_engine) into this repository.

The build that created this CL was
https://ci.chromium.org/b/8785697394030572513

depot_tools:
https://chromium.googlesource.com/chromium/tools/depot_tools.git/+/d9717259ee7ecbe8de97b75a264f5edc18224ab2
  d971725 (jojwang@chromium.org)
      Adjust bot_update recipes to work with infra_superproject context.

infra:
https://chromium.googlesource.com/infra/infra.git/+log/21efdcca37f7ac028a3aa935c83201aa11d44f80~..fac87ac125c4bc1a8f8c853ce636915675d7e746
  21efdcc (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/config from 4cec7623e3c5 to 6d5233422247 (1 rev...
  3328dca (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-py from b54787d3584e to 697c9c893721 (1 revision)
  ecab4ad (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/infra/proto from 97387e4da11c to b1e0e257ffa4 (...
  75c298a (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/config from 6d5233422247 to 89cea8732d85 (1 rev...
  7c01d64 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/infra/proto from b1e0e257ffa4 to 74eec388f741 (...
  098dddb (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-py from 697c9c893721 to 0531cb843a2e (1 revision)
  abf47e5 (dtu@google.com)
      🚝 More fixes for Python 3 and Flask.
  b9027aa (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-py from 0531cb843a2e to 8b7d658b0b49 (1 revision)
  fac87ac (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/config from 89cea8732d85 to 6c7994e5bcf0 (1 rev...

recipe_engine:
https://chromium.googlesource.com/infra/luci/recipes-py.git/+log/6b27317aebdb59e16855442de7ad935955232264~..95bf33331a5ecaa9a751917ae0f02b47786b3429
  6b27317 (olivernewman@google.com)
      [runner] Fix error message for status mismatch
  95bf333 (jojwang@chromium.org)
      Filter out '.' pieces in config_type.Path.

Please check the following references for more information:
- autoroller, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#autoroller
- rollback, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/workflow.md#rollback
- cross-repo dependencies, https://chromium.googlesource.com/infra/luci/recipes-py/+/main/doc/cross_repo.md

Use https://goo.gl/noib3a to file a bug.

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: I67991f6e2d44c4c374461901a7b380c3bc8cf985
2 files changed
tree: 7337ef1c8e7a91ba651f39d3e4990d00f0d5eadf
  1. generated/
  2. infra/
  3. recipes/
  4. repos/
  5. .gitignore
  6. main.star
  7. README.md
README.md

LUCI Configuration

This repo holds all the configuration for LUCI, the CI system Gerrit uses. You can find recent verification runs and logs at https://ci.chromium.org/ui/p/gerrit/builders.

Concepts

  • Recipe: a python script to verify a change, and a test for that verification
  • Builder: a recipe configured to run on a specific machine type
  • CQ Group: a watcher that triggers on new votes/patchsets on the specified repo+refs
  • CQ Tryjob Verifier: combines a CQ group with a builder to run a recipe when a new vote or patchset comes in

Layout

  • /main.star: overall starlark configuration for the entire host. It is also executable to generate the config data
  • /repos/*.star: repo-specific starlark configuration for builders, CQ groups, CQ tryjob verifiers, etc
  • /recipes/recipes/*.py: recipes for testing a change based on the repo
  • /recipes/recipes.py: executes recipe tests and compares/generates expected JSON goldens. 100% coverage is expected.
  • /recipes/recipe_modules/: dependencies shared by modules
  • /recipes/*.expected/*.json: expected commands executed by the recipe
  • /infra/config/recipes.cfg: versions and URLs of external recipe dependencies

Prerequisites

  • lucicfg - CLI tool to generate the configuration from the starlark scripts. To install, clone depot_tools.
  • python - Python 3, used to execute recipes.

Imporant commands

Regenerate config data after making changes (lucicfg):

$ ./main.star

Run recipe tests (python):

$ recipes/recipes.py test run

Update recipe test goldens (python):

$ recipes/recipes.py test train

Documentation