From 542fee95676553bec1b77b835ac6d097fceaff40 Mon Sep 17 00:00:00 2001 From: Artem Bityutskiy Date: Fri, 4 Jan 2013 15:41:08 +0200 Subject: [PATCH] partitionedfs: make the interface a bit saner We have 'add_partition()' call to add one partion, but we have 'add_disks()' method to add all disks at once. This is inconsistent and makes the code more difficult to understand. Fix this by changind 'add_disks()' into 'add_disk()' which adds a single disk. This makes things look a lot nicer. Change-Id: I8a4f4249b1f8fa02486d4cbb3fbc4226ca2e65b8 Signed-off-by: Artem Bityutskiy --- mic/imager/liveusb.py | 2 +- mic/imager/raw.py | 3 +-- mic/utils/partitionedfs.py | 11 ++++++----- plugins/imager/liveusb_plugin.py | 2 +- plugins/imager/raw_plugin.py | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mic/imager/liveusb.py b/mic/imager/liveusb.py index fbfb5ab..dcbf2bf 100644 --- a/mic/imager/liveusb.py +++ b/mic/imager/liveusb.py @@ -71,7 +71,7 @@ class LiveUSBImageCreator(LiveCDImageCreator): usbimgsize) usbmnt = self._mkdtemp("usb-mnt") usbloop = PartitionedMount(usbmnt) - usbloop.add_disks({'/dev/sdb':disk}) + usbloop.add_disk('/dev/sdb', disk) usbloop.add_partition(usbimgsize/1024/1024, "/dev/sdb", diff --git a/mic/imager/raw.py b/mic/imager/raw.py index 5a8c7ef..217544d 100644 --- a/mic/imager/raw.py +++ b/mic/imager/raw.py @@ -203,8 +203,7 @@ class RawImageCreator(BaseImageCreator): disk_obj = fs_related.SparseLoopbackDisk(full_path, disk['min_size']) self.__disks[disk_name] = disk_obj - - self.__instloop.add_disks(self.__disks) + self.__instloop.add_disk(disk_name, disk_obj) self.__instloop.mount() self._create_mkinitrd_config() diff --git a/mic/utils/partitionedfs.py b/mic/utils/partitionedfs.py index ed94760..2bb2e4c 100644 --- a/mic/utils/partitionedfs.py +++ b/mic/utils/partitionedfs.py @@ -75,12 +75,13 @@ class PartitionedMount(Mount): # Minimum required disk size to fit all partitions (in bytes) 'min_size': 0 } - def add_disks(self, disks): - """ Add the disks which have to be partitioned. """ + def add_disk(self, disk_name, disk_obj): + """ Add a disk object which have to be partitioned. More than one disk + can be added. In case of multiple disks, disk partitions have to be + added for each disk separately with 'add_partition()". """ - for name in disks.keys(): - self.__add_disk(name) - self.disks[name]['disk'] = disks[name] + self.__add_disk(disk_name) + self.disks[disk_name]['disk'] = disk_obj def __add_partition(self, part): """ This is a helper function for 'add_partition()' which adds a diff --git a/plugins/imager/liveusb_plugin.py b/plugins/imager/liveusb_plugin.py index 91d281c..73afa47 100644 --- a/plugins/imager/liveusb_plugin.py +++ b/plugins/imager/liveusb_plugin.py @@ -216,7 +216,7 @@ class LiveUSBPlugin(ImagerPlugin): imgmnt = misc.mkdtemp() disk = fs_related.SparseLoopbackDisk(img, imgsize) imgloop = PartitionedMount(imgmnt, skipformat = True) - imgloop.add_disks({'/dev/sdb':disk}) + imgloop.add_disk('/dev/sdb', disk) imgloop.add_partition(imgsize/1024/1024, "/dev/sdb", "/", "vfat", boot=False) try: imgloop.mount() diff --git a/plugins/imager/raw_plugin.py b/plugins/imager/raw_plugin.py index 8b7a3e5..c22e4ea 100644 --- a/plugins/imager/raw_plugin.py +++ b/plugins/imager/raw_plugin.py @@ -136,7 +136,7 @@ class RawPlugin(ImagerPlugin): disk = fs_related.SparseLoopbackDisk(img, imgsize) imgmnt = misc.mkdtemp() imgloop = PartitionedMount(imgmnt, skipformat = True) - imgloop.add_disks({'/dev/sdb':disk}) + imgloop.add_disk('/dev/sdb', disk) img_fstype = "ext3" msger.info("Partition Table:") @@ -246,7 +246,7 @@ class RawPlugin(ImagerPlugin): disk = fs_related.SparseLoopbackDisk(srcimg, srcimgsize) srcloop = PartitionedMount(srcmnt, skipformat = True) - srcloop.add_disks({'/dev/sdb':disk}) + srcloop.add_disk('/dev/sdb', disk) srcloop.add_partition(srcimgsize/1024/1024, "/dev/sdb", "/", "ext3", boot=False) try: srcloop.mount() -- 2.7.4