| Summary: | Performing Automated Runtime Testing with a custom hardware target / BeagleBone Hardware target | ||
|---|---|---|---|
| Product: | [QA/Testing] Runtime Testing | Reporter: | Klaus Wiesen <kwiesen> |
| Component: | oeqa/runtime | Assignee: | Unassigned <unassigned> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | minor | ||
| Priority: | Medium | CC: | akuster808, kwiesen, randy.macleod, richard.purdie, tim.orling, yang.wang |
| Version: | 2.7.2 | ||
| Target Milestone: | 5.99 | ||
| Hardware: | BeagleBone | ||
| OS: | Multiple | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |
For Yang Wang. Could you please share which poky commit was this test done? Currently, with yocto-3.1_M2.rc1 (ca3993cc4b13d4e661228cee6fb9448adfd0a4ba) I can't even build core-image-minimal image based on beaglebone-yocto BSP. It always shows: ERROR: u-boot-1_2020.01-r0 do_configure: oe_runmake failed ERROR: u-boot-1_2020.01-r0 do_configure: Execution of '/buildarea1/users/ywang/poky-bbb/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/1_2020.01-r0/temp/run.do_configure.20547' failed with exit code 1: make: Entering directory `/buildarea1/users/ywang/poky-bbb/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/1_2020.01-r0/git' Makefile:37: *** missing separator. Stop. make: Leaving directory `/buildarea1/users/ywang/poky-bbb/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/1_2020.01-r0/git' WARNING: /buildarea1/users/ywang/poky-bbb/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/1_2020.01-r0/temp/run.do_configure.20547:1 exit 1 from 'exit 1' ERROR: Logfile of failure stored in: /buildarea1/users/ywang/poky-bbb/build/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/1_2020.01-r0/temp/log.do_configure.20547 Hi Yang, I tested it all with yocto 2.7.1 (commit: 38d5c8ea98cfa49825c473eba8984c12edf062be) This issue has been there for many years. meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py has not been updated for a few years. Simple workaround is to change: TEST_TARGET = "BeagleBoneTarget" to: TEST_TARGET = "simpleremote" Lower to a medium since apparently there's a work-around. Build move to 5.0 -- ../Randy Bulk move of 5.0 medium importance issues to 5.99. Move to 5.1 if you want to actively work on an issue. Move to 5.99 since no one is actively working on this issue. Move to 5.x if you start on a task, please. |
Automated runtime test on real hardware does not run. I tried to run it with a basic setup of yocto. I only did following changes to the local conf: IMAGE_FSTYPES += "tar.gz" INHERIT += "testimage" TEST_TARGET = "BeagleBoneTarget" TEST_TARGET_IP = "192.168.135.2" After this I ran the bitbake command: bitbake -c testimage core-image-minimal The build fails with following error message: core-image-minimal-1.0-r0 do_testimage: __init__() got an unexpected keyword argument 'kvm' If I rerun the build the unexpected keyword takes several values. So I tried to debug and enclose the error. I localized following lines of code that cause the error: poky/meta/lib/oeqa/runtime/context.py - lines 116: controller = OERuntimeTestContextExecutor.getControllerModule(target_type, target_modules_path) target = controller(logger, target_ip, server_ip, **kwargs) In these lines the hardwaretarget is initialized with the arguments 'logger','target_ip','server_ip' and '**kwargs'. This mismatches to the init routine of the target class: poky/meta-yocto-bsp/lib/oeqa/controllers/beaglebonetarget.py - lines 31: class BeagleBoneTarget(MasterImageHardwareTarget): dtbs = {'uImage-am335x-bone.dtb': 'am335x-bone.dtb', 'uImage-am335x-boneblack.dtb': 'am335x-boneblack.dtb'} @classmethod def get_extra_files(self): return list(self.dtbs.keys()) def __init__(self, d): super(BeagleBoneTarget, self).__init__(d) The init function here as well as the MasterImageHardwareTarget class' init function only have the arguments 'self' and 'd'. I found out that the unexpected keyword argument always is the first element of '**kwargs'. Its order of arguments changes every build. It's report from discussion in the mailing list. (https://lists.yoctoproject.org/g/automated-testing/topic/69600828#697) Regards Klaus Wiesen