29ee984466
https://crrev.com/c/5188024 bumped the version of anyhow and libc. That broke ChromiumOS build, since we forgot to bump the versions on ChromiumOS side. This CL fixes the build failure by reverting the version bump. Although we also can upgrade the versions on the ChromiumOS, they are not mandate version dump so we just revert them. BUG=None Test=./tools/dev_container ./tools/presubmit Change-Id: Ie47b7219402d73493679cac3330fb958601086df Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/5223988 Commit-Queue: Takaya Saeki <takayas@chromium.org> Reviewed-by: Dennis Kempin <denniskempin@google.com> Commit-Queue: Dennis Kempin <denniskempin@google.com> Auto-Submit: Takaya Saeki <takayas@chromium.org> |
||
---|---|---|
.. | ||
benches | ||
fixture | ||
guest_under_test | ||
tests | ||
Cargo.toml | ||
README.md |
Crosvm End to End Tests
These tests run a crosvm VM on the host to verify end to end behavior. They use a prebuilt guest kernel and rootfs, which is downloaded from google cloud storage.
The e2e_tests can be executed by:
$ ./tools/run_tests --dut=vm -E 'rdeps(e2e_tests)'
Running with locally built kernel/rootfs
If you want to make changes to the kernel or rootfs, you have to specify the environment variables
CROSVM_CARGO_TEST_KERNEL_IMAGE
and CROSVM_CARGO_TEST_ROOTFS_IMAGE
to point to the right files
and then run cargo test
.
With use_local_build.sh script, e2e_tests can be executed with custom kernel/rootfs as follows:
$ cd /path/to/crosvm
$ cd e2e_tests
$ source guest_under_test/use_local_build.sh
$ cargo test
Unsetting the variables will bring back you to the original behavior.
unset CROSVM_CARGO_TEST_KERNEL_IMAGE
unset CROSVM_CARGO_TEST_ROOTFS_IMAGE
Note: The custom images cannot be used with tools/run_tests
.
Uploading prebuilts
Note: Only Googlers with access to the crosvm-testing cloud storage bin can upload prebuilts.
To upload the modified rootfs, you will have to uprev the PREBUILT_VERSION
variable in:
./guest_under_test/PREBUILT_VERSION
and request a permission
to become a member of the crosvm-policy-uploader
group.
Then run the upload script to build and upload the new prebuilts.
# Install QEMU-user-static to build aarch64 images
$ sudo apt install binfmt-support qemu-user-static
# Register binfmt_misc entries
$ docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
# Build and upload the new artifacts
$ ./guest_under_test/upload_prebuilts.sh
Never try to modify an existing prebuilt as the new images may break tests in older versions.