summaryrefslogtreecommitdiff
path: root/morphlib/writeexts.py
diff options
context:
space:
mode:
Diffstat (limited to 'morphlib/writeexts.py')
-rw-r--r--morphlib/writeexts.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/morphlib/writeexts.py b/morphlib/writeexts.py
index d6f23e0d..74587bd1 100644
--- a/morphlib/writeexts.py
+++ b/morphlib/writeexts.py
@@ -104,7 +104,18 @@ class WriteExtension(cliapp.Application):
self.output.write('%s\n' % (kwargs['msg'] % kwargs))
self.output.flush()
-
+
+ def check_for_btrfs_in_deployment_host_kernel(self):
+ with open('/proc/filesystems') as f:
+ text = f.read()
+ return '\tbtrfs\n' in text
+
+ def require_btrfs_in_deployment_host_kernel(self):
+ if not self.check_for_btrfs_in_deployment_host_kernel():
+ raise cliapp.AppException(
+ 'Error: Btrfs is required for this deployment, but was not '
+ 'detected in the kernel of the machine that is running Morph.')
+
def create_local_system(self, temp_root, raw_disk):
'''Create a raw system image locally.'''
size = self.get_disk_size()