summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/lib/wic/imager/direct.py50
1 files changed, 24 insertions, 26 deletions
diff --git a/scripts/lib/wic/imager/direct.py b/scripts/lib/wic/imager/direct.py
index 6340a59a0a..575fd95f11 100644
--- a/scripts/lib/wic/imager/direct.py
+++ b/scripts/lib/wic/imager/direct.py
@@ -99,7 +99,7 @@ class DirectImageCreator:
self.compressor = compressor
self.bmap = bmap
- def __get_part_num(self, num, parts):
+ def _get_part_num(self, num, parts):
"""calculate the real partition number, accounting for partitions not
in the partition table and logical partitions
"""
@@ -142,7 +142,7 @@ class DirectImageCreator:
"""Assume partition order same as in wks"""
updated = False
for num, part in enumerate(parts, 1):
- pnum = self.__get_part_num(num, parts)
+ pnum = self._get_part_num(num, parts)
if not pnum or not part.mountpoint \
or part.mountpoint in ("/", "/boot"):
continue
@@ -209,7 +209,7 @@ class DirectImageCreator:
#
# Actual implemention
#
- def _create(self):
+ def create(self):
"""
For 'wic', we already have our build artifacts - we just create
filesystems from the artifacts directly and combine them into
@@ -217,7 +217,7 @@ class DirectImageCreator:
"""
parts = self._get_parts()
- self.__image = Image(self.native_sysroot)
+ self._image = Image(self.native_sysroot)
disk_ids = {}
for num, part in enumerate(parts, 1):
@@ -234,7 +234,7 @@ class DirectImageCreator:
if part.disk not in disk_ids:
disk_ids[part.disk] = int.from_bytes(os.urandom(4), 'little')
disk_id = disk_ids[part.disk]
- part.uuid = '%0x-%02d' % (disk_id, self.__get_part_num(num, parts))
+ part.uuid = '%0x-%02d' % (disk_id, self._get_part_num(num, parts))
fstab_path = self._write_fstab(self.rootfs_dir.get("ROOTFS_DIR"))
@@ -262,7 +262,7 @@ class DirectImageCreator:
self.bootimg_dir, self.kernel_dir, self.native_sysroot)
- self.__image.add_partition(part.disk_size,
+ self._image.add_partition(part.disk_size,
part.disk,
part.mountpoint,
part.source_file,
@@ -279,28 +279,27 @@ class DirectImageCreator:
if fstab_path:
shutil.move(fstab_path + ".orig", fstab_path)
- self.__image.layout_partitions(self.ptable_format)
+ self._image.layout_partitions(self.ptable_format)
- self.__imgdir = self.workdir
- for disk_name, disk in self.__image.disks.items():
- full_path = self._full_path(self.__imgdir, disk_name, "direct")
+ for disk_name, disk in self._image.disks.items():
+ full_path = self._full_path(self.workdir, disk_name, "direct")
msger.debug("Adding disk %s as %s with size %s bytes" \
% (disk_name, 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, disk_ids.get(disk_name))
+ #self._disks[disk_name] = disk_obj
+ self._image.add_disk(disk_name, disk_obj, disk_ids.get(disk_name))
- self.__image.create()
+ self._image.create()
def assemble(self):
"""
Assemble partitions into disk image(s)
"""
- for disk_name, disk in self.__image.disks.items():
- full_path = self._full_path(self.__imgdir, disk_name, "direct")
+ for disk_name, disk in self._image.disks.items():
+ full_path = self._full_path(self.workdir, disk_name, "direct")
msger.debug("Assembling disk %s as %s with size %s bytes" \
% (disk_name, full_path, disk['min_size']))
- self.__image.assemble(full_path)
+ self._image.assemble(full_path)
def finalize(self):
"""
@@ -308,12 +307,11 @@ class DirectImageCreator:
For example, prepare the image to be bootable by e.g.
creating and installing a bootloader configuration.
-
"""
source_plugin = self.get_default_source_plugin()
if source_plugin:
self._source_methods = pluginmgr.get_source_plugin_methods(source_plugin, disk_methods)
- for disk_name, disk in self.__image.disks.items():
+ for disk_name, disk in self._image.disks.items():
self._source_methods["do_install_disk"](disk, disk_name, self,
self.workdir,
self.oe_builddir,
@@ -321,8 +319,8 @@ class DirectImageCreator:
self.kernel_dir,
self.native_sysroot)
- for disk_name, disk in self.__image.disks.items():
- full_path = self._full_path(self.__imgdir, disk_name, "direct")
+ for disk_name, disk in self._image.disks.items():
+ full_path = self._full_path(self.workdir, disk_name, "direct")
# Generate .bmap
if self.bmap:
msger.debug("Generating bmap file for %s" % disk_name)
@@ -341,12 +339,12 @@ class DirectImageCreator:
parts = self._get_parts()
- for disk_name in self.__image.disks:
+ for disk_name in self._image.disks:
extension = "direct" + {"gzip": ".gz",
"bzip2": ".bz2",
"xz": ".xz",
"": ""}.get(self.compressor)
- full_path = self._full_path(self.__imgdir, disk_name, extension)
+ full_path = self._full_path(self.outdir, disk_name, extension)
msg += ' %s\n\n' % full_path
msg += 'The following build artifacts were used to create the image(s):\n'
@@ -380,13 +378,13 @@ class DirectImageCreator:
return "PARTUUID=%s" % part.uuid
else:
suffix = 'p' if part.disk.startswith('mmcblk') else ''
- pnum = self.__get_part_num(num, parts)
+ pnum = self._get_part_num(num, parts)
return "/dev/%s%s%-d" % (part.disk, suffix, pnum)
- def _cleanup(self):
- if not self.__image is None:
+ def cleanup(self):
+ if self._image:
try:
- self.__image.cleanup()
+ self._image.cleanup()
except ImageError as err:
msger.warning("%s" % err)