From 9f5b2d64071ab8416487b5fc265908a511a9bf68 Mon Sep 17 00:00:00 2001 From: Adam Coldrick Date: Thu, 5 Feb 2015 13:51:23 +0000 Subject: Add support for unionfs Overlayfs is new in version 3.18 of the kernel, so add support for a different implementation of a union/overlay filesystem in order to allow morph to work on older kernels. --- morphlib/builder.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'morphlib/builder.py') diff --git a/morphlib/builder.py b/morphlib/builder.py index 40df10c3..cfba83c7 100644 --- a/morphlib/builder.py +++ b/morphlib/builder.py @@ -558,19 +558,18 @@ class SystemBuilder(BuilderBase): # pragma: no cover try: fs_root = self.staging_area.destdir(self.source) self.unpack_strata(fs_root) - overlay_root = self.staging_area.overlay_upperdir( + upperdir = self.staging_area.overlay_upperdir( self.source) editable_root = self.staging_area.overlaydir(self.source) workdir = os.path.join(self.staging_area.dirname, 'overlayfs-workdir') if not os.path.exists(workdir): os.makedirs(workdir) - options = '-olowerdir=%s,upperdir=%s,workdir=%s' % \ - (fs_root, overlay_root, workdir) - morphlib.fsutils.mount(self.app.runcmd, - 'overlay-%s' % a_name, - editable_root, - 'overlay', options) + morphlib.fsutils.overlay_mount(self.app.runcmd, + 'overlay-%s' % a_name, + editable_root, fs_root, + upperdir, workdir, + self.app.settings) self.write_metadata(editable_root, a_name) self.run_system_integration_commands(editable_root) unslashy_root = editable_root[1:] -- cgit v1.2.1