crosvm/infra/README.recipes.md
recipe-roller e19959ab3c Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls
recipe changes from upstream projects (depot_tools, recipe_engine) into this repository.

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

depot_tools:
9a7b7675ba~..2f988479fb9e31a59f935054d5f230748ed526f4
  9a7b767 (vapier@chromium.org)
      isort: make available to users
  fb8cf9c (aravindvasudev@google.com)
      Add --protocol-override to fetch.py
  13acea3 (brucedawson@chromium.org)
      Let git cl presubmit work with no branch
  23ddab2 (aravindvasudev@google.com)
      Reland "Break make_encoded_file into two functions"
  08a30b2 (bpastene@chromium.org)
      Add examples to the help string for git-cl-try's -B arg
  443d913 (dpapad@chromium.org)
      Include TypeScript .ts files in DEFAULT_FILES_TO_CHECK.
  b9dca86 (meiring@google.com)
      [depot_tools] Roll rdb.
  6a1494e (tikuta@chromium.org)
      Reland "autoninja: increase parallelism for non-HT cpu"
  1bc3cd2 (akhoroshilov@brave.com)
      Add a global core limit support for goma/rbe builds.
  cb2cef9 (sdefresne@chromium.org)
      [mac] Restore an upper limit on the number of jobs on macOS
  31bfd51 (brucedawson@chromium.org)
      Actually add a trailing slash to dir_with_slash
  9997ceb (vapier@chromium.org)
      black: add helper for formatting Python
  aa7d7e4 (dmercadier@chromium.org)
      [cpplint] Fix bug with "if constexpr"
  bfefaa8 (chanli@chromium.org)
      [depot_tools] roll led
  50c631e (jojwang@google.com)
      Skip 'ls' when downloading from gs.
  f8300fb (jochen@chromium.org)
      Remove myself from depot_tools OWNERS
  73218ec (vadimsh@chromium.org)
      [cipd] Update to v2.6.4.
  772f3dc (ukai@google.com)
      Roll out goma client VERSION=246
  632bbc0 (sokcevic@google.com)
      Skip Python 2 presubmit step when unneeded
  cf9a776 (lpromero@chromium.org)
      Typo when countdown is more than 1.
  471b549 (chanli@chromium.org)
      roll dirmd
  0e9a7d2 (sokcevic@google.com)
      Revert "Add iannucci to depot_tools owners"
  2f98847 (dsanders11@ucsbalum.com)
      cpplint: improve root path for header guard behavior

recipe_engine:
f588cc00b9~..04b3acea0bf45c9e1076079998b6378caa5570d2
  f588cc0 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 595e0f7a2869 to cb424e70e751
  52ef306 (iannucci@chromium.org)
      [recipe_engine] Implicit CANCELED final build status.
  cde011f (machenbach@chromium.org)
      [led] Add common logic to trigger a builder
  087afb8 (chanli@chromium.org)
      [recipe-py] buildbucket: enable buildbucket tracking parent/chi...
  c827c1b (chanli@chromium.org)
      Revert "[recipe-py] buildbucket: enable buildbucket tracking pa...
  9eef321 (gbeaty@chromium.org)
      Prevent creation of candidates for dependencies of dependencies.
  3db9e1b (chanli@chromium.org)
      Reland "[recipe-py] buildbucket: enable buildbucket tracking pa...
  b788d0a (vadimsh@chromium.org)
      [scheduler] Expose job ID and invocation ID.
  6d2e271 (gredelston@google.com)
      walkthrough.md: Fix incorrect kwarg "output"
  14202da (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from addd54e4fcef to 6da0608e4fa8
  826d446 (kimstephanie@google.com)
      Add new post_process.PropertiesContain to check that key exists
  f15df27 (chanli@chromium.org)
      Extend placeholder.py to schedule child builds
  83eab46 (whesse@google.com)
      [buildbucket] Relax type check on buildbucket ids
  d3504b5 (mohrr@google.com)
      [path] Add __lt__ to Path
  9e3ca47 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from a0672c27eaaa to 5fa853f88d79
  2522322 (gbeaty@chromium.org)
      Rewrite candidate_algorithm.
  b4882c1 (chanli@chromium.org)
      [time] make sleep a timed wait on global_shutdown
  1d661d3 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from b927ccff49e4 to b2aa2d72c22b
  a6fd0d2 (chanli@chromium.org)
      [time] set the step to canceled if GLOBAL_SHUTDOWN is triggered
  0f5f374 (alexschulze@chromium.org)
      [cipd] Fix `instances` command with limit = 0
  048f6f2 (chanli@chromium.org)
      [recipe-py] buildbucket: set `luci.buildbucket.parent_tracking`...
  d63eb67 (chanli@chromium.org)
      Revert "[recipe-py] buildbucket: set `luci.buildbucket.parent_t...
  e783f88 (chanli@chromium.org)
      [recipe-py] (2 attempt) buildbucket: set `luci.buildbucket.pare...
  2239191 (gbeaty@chromium.org)
      Prevent spurious GitFetchErrors in CommitList.from_backend.
  efaa1e2 (iannucci@chromium.org)
      [json] Stop using python.inline.
  dc013a8 (iannucci@chromium.org)
      [python] Mark python.inline with a warning
  6345fb2 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 4f40f26f3102 to 2aa3d7e5e866
  36be946 (iannucci@chromium.org)
      [python] Deprecate api.python.__call__
  357b1cd (martiniss@google.com)
      Add timing information option to the test command
  e174a86 (martiniss@google.com)
      Add exponential_backoff to the time module.
  ce1d368 (iannucci@chromium.org)
      [warnings] Omit warnings which are attributed to other recipe r...
  c002009 (akashmukherjee@google.com)
      [snoopy] Create luci's bcid recipe module dir.
  1e08dae (akashmukherjee@google.com)
      [snoopy] Create a luci's bcid recipe_module.
  f2754bc (akashmukherjee@google.com)
      [snoopy] Update the cipd for reporter module.
  4cb1bf0 (gbeaty@chromium.org)
      Don't set the -u flag when running python unbuffered.
  50cbd44 (meiring@google.com)
      [recipe-py] roll recipe_proto
  82fb654 (meiring@google.com)
      [recipes-py] Update ResultDB exoneration example to populate re...
  bb1fb5a (iannucci@chromium.org)
      [python] Set warning for entire python module.
  d047727 (gbeaty@chromium.org)
      Inhibit displaying coverage information on python3 failures wit...
  57ac2ff (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from e361505b12f1 to 3bd002442390
  253ac82 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 91c1b9ec335a to cad461b65231
  2684e3c (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 4137ed7879ac to 93b14d0f4216
  ac03648 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 35b05be75bc4 to 29b908616bc9
  0a09360 (kimstephanie@google.com)
      Add post_process.LogDoesNotContain
  08c51a1 (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from c25db5a11beb to d3db74920e35
  e3cd9eb (kuanhuang@chromium.org)
      Add recipes API swarming.show_request(name, task) -> TaskRequest
  04b3ace (chromium-autoroll@skia-public.iam.gserviceaccount.com)
      Roll CAS Client from 8b08f5e9f609 to 0ef9351a5b73

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.

R=denniskempin@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Ignore-Freeze: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic16796c2981fe7b3373146a55921cfee5e64eedc
Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3764420
Commit-Queue: Dennis Kempin <denniskempin@google.com>
Bot-Commit: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
2022-07-14 20:28:31 +00:00

12 KiB
Raw Blame History

Repo documentation for crosvm

Table of Contents

Recipe Modules

Recipes

Recipe Modules

recipe_modules / crosvm

DEPS: depot_tools/bot_update, depot_tools/gclient, depot_tools/git, recipe_engine/buildbucket, recipe_engine/cipd, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/platform, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

class CrosvmApi(RecipeApi):

Crosvm specific functionality shared between recipes.

@property
def builder_cache(self):

Dedicated cache directory for each builder.

Luci will try to run each builder on the same bot as previously to keep this cache present.

@property
def cargo_home(self):

CARGO_HOME is cached between runs.

@property
def cargo_target_dir(self):

CARGO_TARGET_DIR is cleaned up between runs

def container_build_context(self):

Prepares source and system to build crosvm via dev container.

Usage: with api.crosvm.container_build_context(): api.crosvm.step_in_container("build crosvm", ["cargo build"])

@property
def dev_container_cache(self):

def host_build_context(self):

Prepares source and system to build crosvm directly on the host.

This will install the required rust version via rustup. However no further dependencies are installed.

Usage: with api.crosvm.host_build_context(): api.step("build crosvm", ["cargo build"])

@property
def local_bin(self):

Directory used to install local tools required by the build.

def prepare_git(self):

@property
def rustup_home(self):

RUSTUP_HOME is cached between runs.

def source_context(self):

Updates the source to the revision to be tested and drops into the source directory.

Use when no build commands are needed.

@property
def source_dir(self):

Where the crosvm source will be checked out.

def step_in_container(self, step_name, command):

Runs a luci step inside the crosvm dev container.

Recipes

recipes / build_chromeos

DEPS: crosvm, depot_tools/depot_tools, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/properties, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def BuildAndTest(api, board):

def CleanUp(api):

def PrepareBuild(api):

def RunSteps(api, properties):

def SetupSource(api, workspace):

recipes / build_docs

DEPS: crosvm, depot_tools/gsutil, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/file, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

Builds crosvm mdbook and api docs, then uploads them to GCS.

This recipe requires ambient luci authentication. To test locally run: $ luci-auth context ./infra/recipes.py run build_docs

recipes / build_linux

DEPS: crosvm, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/properties, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api, properties):

def get_test_args(api, properties):

Returns architecture specific arguments for ./tools/run_tests

recipes / build_windows

DEPS: crosvm, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/properties, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

recipes / crosvm:examples/container_build_context

DEPS: crosvm

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

recipes / crosvm:examples/host_build_context

DEPS: crosvm, recipe_engine/platform, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

recipes / crosvm:examples/source_context

DEPS: crosvm, recipe_engine/buildbucket

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

recipes / health_check

DEPS: crosvm, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/properties, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

recipes / push_to_github

DEPS: crosvm, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/raw_io, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):

recipes / update_chromeos_merges

DEPS: crosvm, recipe_engine/context, recipe_engine/step

PYTHON_VERSION_COMPATIBILITY: PY3

def RunSteps(api):