This setup is no longer needed since:
- The current build system and GPU backend
integration have been restructured.
- CI now works with the virglrenderer crate.
- Environment variable overrides are no
longer necessary to avoid CI failures.
Signed-off-by: Dorinda Bassey <dbassey@redhat.com>
- Updated rutabaga_gfx to 0.1.62, which now requires env vars to
use system-provided virglrenderer and minigbm libraries for both
gfxstream and virglrenderer GPU backends.
- Updated README with new build instructions using
CROSVM_USE_SYSTEM_* env vars.
- Update transfer_read to use the latest rutabaga_gfx changes
- The GNU CI builds and tests for vhost-device-gpu currently fail
because they try to build against the vendored virglrenderer tree.
Locally we already build with CROSVM_USE_SYSTEM_* env vars, so
mirror that setup in CI as well.
Signed-off-by: Dorinda Bassey <dbassey@redhat.com>
The GPU device doesn't support musl builds, because it links to many native
libraries which are compiled with glibc. vhost-device-gpu uses the virglrender and
gfxstream native libraries, which in turn require other native libraries
(libstdc++, Vulkan, OpenGL, etc.).
Signed-off-by: Matej Hrica <mhrica@redhat.com>
The CLI interface should be stable now and coverage is good. Support
for more backends as described in the README is comming later.
Note that this decreases the test coverage in the staging directory from
82.43% to 74.62%.
Signed-off-by: Matej Hrica <mhrica@redhat.com>
`vhost-device-gpu` has dependencies that do not work well on musl.
Also `vhost-device-gpio` has the same problem, but we merged
workarounds.
Instead of continuing to make hacks to compile empty main for these
applications. Better to have our own pipeline also for the main
workspace. In that way we can easily exclude applications (e.g. that
do not support musl) as discussed in
https://github.com/rust-vmm/vhost-device/pull/801
The new `.buildkite/main-tests.json` file is copied from
rust-vmm-ci/.buildkite/test_description.json from commit 09aef99
("chore: update container version to v48")
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Do not build the GPU device for musl targets. To compile it properly would
require setting up a build enivorment with all the native dependencies
compiled with musl as well.
Signed-off-by: Matej Hrica <mhrica@redhat.com>
In some cases, we don't realize that changes can break crates in
`staging` because CI is not blocking.
Let's make sure that at least the build of crates in `staging` is
blocking, while the rest (clippy, coverage, musl, etc.) remain
non-blocking for CI.
Suggested-by: Erik Schilling <erik.schilling@linaro.org>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Rename the file to avoid confusion and add a readme to better explain
why we want to keep it aligned with
`rust-vmm-ci/.buildkite/test_description.json`
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Let's use custom pipelines to run CI tests in the nested worskpace.
We have included all the tests we usually run in the main workspace
(rust-vmm-ci/.buildkite/test_description.json), except for "commit-format"
which also covers commits for staging crates.
Let's add a `staging\coverage_config_x86_64.json` for testing coverage of
crates in staging.
All staging tests have `soft_fail = true` to prevent failures in staging
from affecting the CI of the main workspace.
Closes#478
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>