diff options
author | Adam Coldrick <adam.coldrick@codethink.co.uk> | 2015-02-05 13:51:23 +0000 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2015-04-20 14:07:40 +0000 |
commit | 6821d8234848a7e657434001cc9a904dc670db44 (patch) | |
tree | d7f2fcab6575885eda0d262c004ae04202f3008d /morphlib/builder.py | |
parent | 3fb6281192630670b735d6c6af243afbf8e01282 (diff) | |
download | morph-6821d8234848a7e657434001cc9a904dc670db44.tar.gz |
Add support for unionfs-fuse
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.
Change-Id: I63f05265c645dfcc92f3987582bb3f06d853e740
Diffstat (limited to 'morphlib/builder.py')
-rw-r--r-- | morphlib/builder.py | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/morphlib/builder.py b/morphlib/builder.py index c1e409d0..524e85a3 100644 --- a/morphlib/builder.py +++ b/morphlib/builder.py @@ -536,19 +536,19 @@ 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) + union_filesystem = self.app.settings['union-filesystem'] + morphlib.fsutils.overlay_mount(self.app.runcmd, + 'overlay-%s' % a_name, + editable_root, fs_root, + upperdir, workdir, + union_filesystem) self.write_metadata(editable_root, a_name) self.run_system_integration_commands(editable_root) unslashy_root = editable_root[1:] |