aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/selftest/containerimage.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta/lib/oeqa/selftest/containerimage.py')
-rw-r--r--meta/lib/oeqa/selftest/containerimage.py83
1 files changed, 0 insertions, 83 deletions
diff --git a/meta/lib/oeqa/selftest/containerimage.py b/meta/lib/oeqa/selftest/containerimage.py
deleted file mode 100644
index def481f1445..00000000000
--- a/meta/lib/oeqa/selftest/containerimage.py
+++ /dev/null
@@ -1,83 +0,0 @@
-import os
-
-from oeqa.selftest.base import oeSelfTest
-from oeqa.utils.commands import bitbake, get_bb_vars, runCmd
-
-# This test builds an image with using the "container" IMAGE_FSTYPE, and
-# ensures that then files in the image are only the ones expected.
-#
-# The only package added to the image is container_image_testpkg, which
-# contains one file. However, due to some other things not cleaning up during
-# rootfs creation, there is some cruft. Ideally bugs will be filed and the
-# cruft removed, but for now we whitelist some known set.
-#
-# Also for performance reasons we're only checking the cruft when using ipk.
-# When using deb, and rpm it is a bit different and we could test all
-# of them, but this test is more to catch if other packages get added by
-# default other than what is in ROOTFS_BOOTSTRAP_INSTALL.
-#
-class ContainerImageTests(oeSelfTest):
-
- # Verify that when specifying a IMAGE_TYPEDEP_ of the form "foo.bar" that
- # the conversion type bar gets added as a dep as well
- def test_expected_files(self):
-
- def get_each_path_part(path):
- if path:
- part = [ '.' + path + '/' ]
- result = get_each_path_part(path.rsplit('/', 1)[0])
- if result:
- return part + result
- else:
- return part
- else:
- return None
-
- self.write_config("""PREFERRED_PROVIDER_virtual/kernel = "linux-dummy"
-IMAGE_FSTYPES = "container"
-PACKAGE_CLASSES = "package_ipk"
-IMAGE_FEATURES = ""
-""")
-
- bbvars = get_bb_vars(['bindir', 'sysconfdir', 'localstatedir',
- 'DEPLOY_DIR_IMAGE', 'IMAGE_LINK_NAME'],
- target='container-test-image')
- expected_files = [
- './',
- '.{bindir}/theapp',
- '.{sysconfdir}/default/',
- '.{sysconfdir}/default/postinst',
- '.{sysconfdir}/ld.so.cache',
- '.{sysconfdir}/timestamp',
- '.{sysconfdir}/version',
- './run/',
- '.{localstatedir}/cache/',
- '.{localstatedir}/cache/ldconfig/',
- '.{localstatedir}/cache/ldconfig/aux-cache',
- '.{localstatedir}/cache/opkg/',
- '.{localstatedir}/lib/',
- '.{localstatedir}/lib/opkg/'
- ]
-
- expected_files = [ x.format(bindir=bbvars['bindir'],
- sysconfdir=bbvars['sysconfdir'],
- localstatedir=bbvars['localstatedir'])
- for x in expected_files ]
-
- # Since tar lists all directories individually, make sure each element
- # from bindir, sysconfdir, etc is added
- expected_files += get_each_path_part(bbvars['bindir'])
- expected_files += get_each_path_part(bbvars['sysconfdir'])
- expected_files += get_each_path_part(bbvars['localstatedir'])
-
- expected_files = sorted(expected_files)
-
- # Build the image of course
- bitbake('container-test-image')
-
- image = os.path.join(bbvars['DEPLOY_DIR_IMAGE'],
- bbvars['IMAGE_LINK_NAME'] + '.tar.bz2')
-
- # Ensure the files in the image are what we expect
- result = runCmd("tar tf {} | sort".format(image), shell=True)
- self.assertEqual(result.output.split('\n'), expected_files)