Is slirp really required? Is it possible to use the standard tap setup instead? Alex On Mon, 17 May 2021 at 12:35, Vinay Kumar wrote: > The rust test involves qemuimage for testing, so > "run_check_emulated" involves building of "remote-test-server", > qemuimage and test execution. > > We are booting qemuimage in "nographic" and "slirp" mode along with > additional qemuparams, > '-monitor telnet:127.0.0.1:1234,server,nowait -serial mon:stdio -serial > null' > > Note: > '-serial mon:stdio -serial' : To fix below run-time errors while testing > "failed with Connection reset by peer" > > Signed-off-by: Vinay Kumar > --- > meta/lib/oeqa/selftest/cases/rust.py | 32 ++++++++++++++++++++++++++++ > 1 file changed, 32 insertions(+) > create mode 100644 meta/lib/oeqa/selftest/cases/rust.py > > diff --git a/meta/lib/oeqa/selftest/cases/rust.py > b/meta/lib/oeqa/selftest/cases/rust.py > new file mode 100644 > index 0000000000..4efbf9306f > --- /dev/null > +++ b/meta/lib/oeqa/selftest/cases/rust.py > @@ -0,0 +1,32 @@ > +# SPDX-License-Identifier: MIT > +import os > +from oeqa.core.decorator import OETestTag > +from oeqa.core.case import OEPTestResultTestCase > +from oeqa.selftest.case import OESelftestTestCase > +from oeqa.utils.commands import bitbake, get_bb_var, get_bb_vars, > runqemu, Command > + > +class RustSelfTestBase(OESelftestTestCase, OEPTestResultTestCase): > + > + def run_check_emulated(self, *args, **kwargs): > + # build remote-test-server before image build > + recipe = "rust-testsuite" > + bitbake("{} -c compile".format(recipe)) > + > + # build core-image-minimal with required packages > + default_installed_packages = ["libgcc", "libstdc++", > "libatomic", "libgomp"] > + features = [] > + features.append('IMAGE_FEATURES += "ssh-server-openssh"') > + features.append('CORE_IMAGE_EXTRA_INSTALL += > "{0}"'.format(" ".join(default_installed_packages))) > + self.write_config("\n".join(features)) > + bitbake("core-image-minimal") > + # wrap the execution with a qemu instance > + with runqemu("core-image-minimal", runqemuparams = > "nographic slirp", qemuparams= " -monitor \ > + telnet:127.0.0.1:1234,server,nowait -serial > mon:stdio -serial null") as qemu: > + recipe = "rust-testsuite" > + bitbake("{} -c check".format(recipe)) > + > + > +@OETestTag("toolchain-system") > +class RustSelfTestSystemEmulated(RustSelfTestBase): > + def test_rust(self): > + self.run_check_emulated("rust") > -- > 2.17.1 > >