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-07-26 08:56:27 +0100 |
commit | e6e05a30b1251cabd1fc88703e6bc619fa19db2d (patch) | |
tree | baf9fe53bb057487273dbc46c7a7e94a559ef535 /meta-yocto-bsp/lib/oeqa/selftest | |
parent | efd7d6b6fc7c41fe5fa4cb1af440c9b456f227d2 (diff) | |
download | poky-e6e05a30b1251cabd1fc88703e6bc619fa19db2d.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 OE-Core rev: 3f859816aef3c3dba35cfbea15f0c56483205544)
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>
Diffstat (limited to 'meta-yocto-bsp/lib/oeqa/selftest')
-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) | ||