The builders use the existing dev_container to run tests for the 3 currently supported architectures on linux: x86_64, aarch64 and armhf. A new recipe 'build_linux' has been added runs the dev_container to build and execute tests. To share code with other upcoming recipes, some of the recipe code has been extracted into a shared crosvm module. Basic tests for the recipes have been added. BUG=b:233230344 TEST=./recipes.py test run ./recipes.py run build_linux Change-Id: I17ecb25c0a0eabdce56537831454ac22d4dc7021 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3654196 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
4.9 KiB
Repo documentation for crosvm
Table of Contents
- crosvm (Python3 ✅)
- build_linux (Python3 ✅)
- crosvm:examples/prepare_source (Python3 ✅)
- crosvm:examples/step_in_container (Python3 ✅)
Recipe Modules
recipe_modules / crosvm
DEPS: depot_tools/bot_update, depot_tools/gclient, recipe_engine/buildbucket, recipe_engine/context, recipe_engine/file, recipe_engine/path, recipe_engine/step
PYTHON_VERSION_COMPATIBILITY: PY3
class CrosvmApi(RecipeApi):
Crosvm specific functionality shared between recipes.
@property
— def builder_dir(self):
— def prepare_source(self):
Prepares the local crosvm source for testing in self.source_dir
CI jobs will check out the revision to be tested, try jobs will check out the gerrit change to be tested.
@property
— def source_dir(self):
— def step_in_container(self, step_name, command):
Runs a luci step inside the crosvm dev container.
Recipes
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, test_arch):
Returns architecture specific arguments for ./tools/run_tests
recipes / crosvm:examples/prepare_source
DEPS: crosvm, recipe_engine/buildbucket
PYTHON_VERSION_COMPATIBILITY: PY3
— def RunSteps(api):
recipes / crosvm:examples/step_in_container
PYTHON_VERSION_COMPATIBILITY: PY3
— def RunSteps(api):