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/8749264832083967729

depot_tools:
https://chromium.googlesource.com/chromium/tools/depot_tools.git/+log/979678ce51d80383fc234d0bd57383b50a79da11~..2c87882a7bacebf523a3df6a76432d0bc47badf8
  979678c (mlcui@google.com)
      git_cl: Fix format dry-run not signalling patch not formatted
  2c87882 (joelhockey@chromium.org)
      Use typing List to work in cros python 3.8

infra:
https://chromium.googlesource.com/infra/infra.git/+log/516e55caca15cfc7369ac5dc38f6b490ccee192c~..523520c52e91056f78e8c8d9592b83570be48852
  516e55c (guocb@google.com)
      fix(caching): don't verify the bucket accesses
  a62b0dd (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-go from 59a8f52b6bc7 to 9659bd518421 (1 revision)
  033ee3c (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/infra/proto from 66a8f1cbf657 to d6213d06468e (...
  bdc3910 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/config from 3f3c06e7cc13 to ae293ea54646 (1 rev...
  c0c7498 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-go from 9659bd518421 to 2ad9b689b6f8 (2 revisions)
  64745f1 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/config from ae293ea54646 to b043d31b821d (1 rev...
  24c5639 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-go from 2ad9b689b6f8 to 1d797ce626d0 (2 revisions)
  4a9ee00 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/infra/proto from d6213d06468e to 0cb396892d30 (...
  f216b66 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/config from b043d31b821d to a80f0c5d1ecc (1 rev...
  a52accd (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll luci-go from 1d797ce626d0 to becae24800f5 (1 revision)
  523520c (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll chromiumos/infra/proto from 0cb396892d30 to a4e68085a672 (...

recipe_engine:
https://chromium.googlesource.com/infra/luci/recipes-py.git/+log/f1de410e02d74ae44e1f3e95bf3fa9dc9131e60c~..1ef4627f556adaf64e6f0e7c7b6a2fc0cc0a7443
  f1de410 (mohrr@google.com)
      [config_types.Path] Deprecate Path.is_parent_of()
  791c785 (chanli@chromium.org)
      [recipe_modules/buildbucket] schedule: add `led_inherit_parent`
  1ef4627 (mohrr@google.com)
      [config_types.Path] Deprecate Path.join()

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: I00c429b8b45e0bdd2387666129727022c3858ffd
2 files changed
tree: 792e80e6c515035e89e4d3cd968907994a9d72e9
  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