This re-creates the Kokoro equivalent crosvm/ci/build-chromeos.sh. It is a very inefficent builder that does a fresh checkout of chromeos for every build. We may want to consider using some of the chromiumos recipes for caching the repo or sdk between builds. BUG=b:233230344 TEST=./recipes.py test run ./recipes.py run build_chromeos Change-Id: I5d545bae4817cae5b79c5d65901081d9b1391466 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3664842 Reviewed-by: Daniel Verkamp <dverkamp@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com>
6.5 KiB
Repo documentation for crosvm
Table of Contents
- crosvm (Python3 ✅)
- build_chromeos (Python3 ✅)
- build_linux (Python3 ✅)
- crosvm:examples/container (Python3 ✅)
- crosvm:examples/prepare_source (Python3 ✅)
- health_check (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_container(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_chromeos
DEPS: crosvm, 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_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/container
PYTHON_VERSION_COMPATIBILITY: PY3
— def RunSteps(api):
recipes / crosvm:examples/prepare_source
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):