diff options
| author | Jose Perez Carranza <jose.perez.carranza@intel.com> | 2016-07-04 16:15:07 -0500 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-08-11 13:35:57 +0100 |
| commit | d11e8e1109c2c5a0cc3e4dea70cebe068b2a6ba1 (patch) | |
| tree | 59888814a89f1f3f19dae1d77b0fa97aa26ab8c6 | |
| parent | 2c043e3655955dec93a95d4593c2b455bf3d6552 (diff) | |
| download | poky-d11e8e1109c2c5a0cc3e4dea70cebe068b2a6ba1.tar.gz | |
systemd_boot: Enable module to test systemd bootloader
Module systemd_boot created wtih a class "Systemdboot"
and a test case "test_efi_systemdboot_images_can_be_built"
to test new systemd bootloader.
[YOCTO #9706]
(From meta-yocto rev: 4366060660f15592261227ca47088b492383f8cc)
Signed-off-by: Jose Perez Carranza <jose.perez.carranza@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta-yocto-bsp/lib/oeqa/selftest/systemd_boot.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/meta-yocto-bsp/lib/oeqa/selftest/systemd_boot.py b/meta-yocto-bsp/lib/oeqa/selftest/systemd_boot.py new file mode 100644 index 0000000000..f7f74db7e2 --- /dev/null +++ b/meta-yocto-bsp/lib/oeqa/selftest/systemd_boot.py | |||
| @@ -0,0 +1,56 @@ | |||
| 1 | from oeqa.selftest.base import oeSelfTest | ||
| 2 | from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu | ||
| 3 | from oeqa.utils.decorators import testcase | ||
| 4 | import re | ||
| 5 | import os | ||
| 6 | import sys | ||
| 7 | import logging | ||
| 8 | |||
| 9 | |||
| 10 | class Systemdboot(oeSelfTest): | ||
| 11 | |||
| 12 | def _common_setup(self): | ||
| 13 | """ | ||
| 14 | Common setup for test cases: 1445, XXXX | ||
| 15 | """ | ||
| 16 | |||
| 17 | # Set EFI_PROVIDER = "gummiboot" and MACHINE = "genericx86-64" in conf/local.conf | ||
| 18 | features = 'EFI_PROVIDER = "systemd-boot"\n' | ||
| 19 | features += 'MACHINE = "genericx86-64"' | ||
| 20 | self.append_config(features) | ||
| 21 | |||
| 22 | def _common_build(self): | ||
| 23 | """ | ||
| 24 | Common build for test cases: 1445 , XXXX | ||
| 25 | """ | ||
| 26 | |||
| 27 | # Build a genericx86-64/efi gummiboot image | ||
| 28 | bitbake('mtools-native core-image-minimal') | ||
| 29 | |||
| 30 | |||
| 31 | @testcase(1445) | ||
| 32 | def test_efi_systemdboot_images_can_be_built(self): | ||
| 33 | """ | ||
| 34 | Summary: Check if systemd-boot images can be built correctly | ||
| 35 | Expected: 1. File systemd-boot.efi should be available in $poky/build/tmp/deploy/images/genericx86-64 | ||
| 36 | 2. 'systemd-boot" can be built correctly | ||
| 37 | Product: oe-core | ||
| 38 | Author: Jose Perez Carranza <jose.perez.carranza@intel.com> | ||
| 39 | AutomatedBy: Jose Perez Carranza <jose.perez.carranza@intel.com> | ||
| 40 | """ | ||
| 41 | |||
| 42 | # We'd use DEPLOY_DIR_IMAGE here, except that we need its value for | ||
| 43 | # MACHINE="genericx86-64 which is probably not the one configured | ||
| 44 | systemdbootfile = os.path.join(get_bb_var('DEPLOY_DIR'), 'images', 'genericx86-64', 'systemd-bootx64.efi') | ||
| 45 | |||
| 46 | self._common_setup() | ||
| 47 | |||
| 48 | # Ensure we're actually testing that this gets built and not that | ||
| 49 | # it was around from an earlier build | ||
| 50 | bitbake('-c cleansstate systemd-boot') | ||
| 51 | runCmd('rm -f %s' % systemdbootfile) | ||
| 52 | |||
| 53 | self._common_build() | ||
| 54 | |||
| 55 | found = os.path.isfile(systemdbootfile) | ||
| 56 | self.assertTrue(found, 'Systemd-Boot file %s not found' % systemdbootfile) | ||
