From c429cf9dd7deccac0fd386a80c3a88b815c34a5d Mon Sep 17 00:00:00 2001 From: Dor Askayo Date: Mon, 23 May 2022 14:50:31 +0300 Subject: [PATCH] Keep chroot indication only in prepare() It's not actually needed by other methods. --- rootfs.py | 3 +-- sysa.py | 7 +++---- sysb.py | 3 +-- sysc.py | 9 ++++----- 4 files changed, 9 insertions(+), 13 deletions(-) diff --git a/rootfs.py b/rootfs.py index 8a5c98c..efcc546 100755 --- a/rootfs.py +++ b/rootfs.py @@ -110,8 +110,7 @@ def main(): system_c = SysC(arch=args.arch, preserve_tmp=args.preserve, tmpdir=args.tmpdir, chroot=args.chroot) - system_b = SysB(arch=args.arch, preserve_tmp=args.preserve, - chroot=args.chroot) + system_b = SysB(arch=args.arch, preserve_tmp=args.preserve) system_a = SysA(arch=args.arch, preserve_tmp=args.preserve, tmpdir=args.tmpdir, chroot=args.chroot, sysb_dir=system_b.sys_dir, sysc_tmp=system_c.tmp_dir) diff --git a/sysa.py b/sysa.py index 3db3744..b50ecdc 100755 --- a/sysa.py +++ b/sysa.py @@ -33,14 +33,13 @@ class SysA(SysGeneral): self.cache_dir = os.path.join(self.sys_dir, 'distfiles') self.sysb_dir = sysb_dir self.sysc_tmp = sysc_tmp - self.chroot = chroot - self.prepare() + self.prepare(chroot) if not chroot: self.make_initramfs() - def prepare(self): + def prepare(self, chroot): """ Prepare directory structure for System A. We create an empty tmpfs, unpack stage0-posix. @@ -54,7 +53,7 @@ class SysA(SysGeneral): # sysb must be added to sysa as it is another initramfs stage self.sysb() - if self.chroot: + if chroot: self.sysc() def sysa(self): diff --git a/sysb.py b/sysb.py index e6a53bf..3f02f48 100755 --- a/sysb.py +++ b/sysb.py @@ -12,10 +12,9 @@ class SysB(SysGeneral): """ Class responsible for preparing sources for System B. """ - def __init__(self, arch, preserve_tmp, chroot): + def __init__(self, arch, preserve_tmp): self.git_dir = os.path.dirname(os.path.join(__file__)) self.arch = arch self.preserve_tmp = preserve_tmp - self.chroot = chroot self.sys_dir = os.path.join(self.git_dir, 'sysb') diff --git a/sysc.py b/sysc.py index 54c5571..c0f422a 100755 --- a/sysc.py +++ b/sysc.py @@ -24,7 +24,6 @@ class SysC(SysGeneral): self.git_dir = os.path.dirname(os.path.join(__file__)) self.arch = arch self.preserve_tmp = preserve_tmp - self.chroot = chroot self.sys_dir = os.path.join(self.git_dir, 'sysc') self.cache_dir = os.path.join(self.sys_dir, 'distfiles') @@ -34,7 +33,7 @@ class SysC(SysGeneral): self.tmp_dir = os.path.join(tmpdir, 'sysc') os.mkdir(self.tmp_dir) - self.prepare() + self.prepare(chroot) def __del__(self): if not self.preserve_tmp: @@ -44,7 +43,7 @@ class SysC(SysGeneral): super().__del__() - def prepare(self): + def prepare(self, chroot): """ Prepare directory structure for System C. """ @@ -52,7 +51,7 @@ class SysC(SysGeneral): rootfs_dir = None - if not self.chroot: + if not chroot: # Create + mount a disk for QEMU to use disk_path = os.path.join(self.tmp_dir, 'disk.img') self.dev_name = create_disk(disk_path, "msdos", "ext4", '8G') @@ -70,7 +69,7 @@ class SysC(SysGeneral): copytree(self.sys_dir, rootfs_dir, ignore=shutil.ignore_patterns("tmp")) # Unmount tmp/mnt if it exists - if not self.chroot: + if not chroot: umount(rootfs_dir) # pylint: disable=line-too-long,too-many-statements