From f8959d48e882883369061c09689c248801a77338 Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Thu, 28 Apr 2016 13:58:07 +0300 Subject: wic: moved DiskImage to direct.py Moved DiskImage class from utils/fs_related.py to imager/direct.py as it's only used there. Removed fs_related module as it doesn't contain anything except of DiskImage. (From OE-Core rev: b3cc471790784c28f9362fcd6fc6a81c4316754c) Signed-off-by: Ed Bartosh Signed-off-by: Richard Purdie --- scripts/lib/wic/imager/direct.py | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'scripts/lib/wic/imager') diff --git a/scripts/lib/wic/imager/direct.py b/scripts/lib/wic/imager/direct.py index 1937042e1a..319ec1654d 100644 --- a/scripts/lib/wic/imager/direct.py +++ b/scripts/lib/wic/imager/direct.py @@ -28,7 +28,6 @@ import os import shutil from wic import msger -from wic.utils import fs_related from wic.utils.oe.misc import get_bitbake_var from wic.utils.partitionedfs import Image from wic.utils.errors import CreatorError, ImageError @@ -40,6 +39,26 @@ disk_methods = { "do_install_disk":None, } +class DiskImage(): + """ + A Disk backed by a file. + """ + def __init__(self, device, size): + self.size = size + self.device = device + self.created = False + + def exists(self): + return os.path.exists(self.device) + + def create(self): + if self.created: + return + # create sparse disk image + cmd = "truncate %s -s %s" % (self.device, self.size) + exec_cmd(cmd) + self.created = True + class DirectImageCreator(BaseImageCreator): """ Installs a system into a file containing a partitioned disk image. @@ -280,7 +299,7 @@ class DirectImageCreator(BaseImageCreator): full_path = self._full_path(self.__imgdir, disk_name, "direct") msger.debug("Adding disk %s as %s with size %s bytes" \ % (disk_name, full_path, disk['min_size'])) - disk_obj = fs_related.DiskImage(full_path, disk['min_size']) + disk_obj = DiskImage(full_path, disk['min_size']) self.__disks[disk_name] = disk_obj self.__image.add_disk(disk_name, disk_obj) -- cgit 1.2.3-korg