From ba98262573cf1600e0d477317f51d488b5f8c4bd Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Tue, 19 Jan 2016 18:51:05 +0200 Subject: wic: do not remove build dir in source plugins Interesting bug was found during implementation of 'include' parser command. Build directory was removed in do_configure_partition method of bootimg- source plugins. This can cause removal of previously prepared partition images if /boot partition is mentioned after other partitions in .ks file. Moved work directory removal to direct.py before processing partitions. Signed-off-by: Ed Bartosh Signed-off-by: Richard Purdie --- scripts/lib/wic/imager/direct.py | 3 +++ scripts/lib/wic/plugins/source/bootimg-efi.py | 2 -- scripts/lib/wic/plugins/source/bootimg-partition.py | 3 --- scripts/lib/wic/plugins/source/bootimg-pcbios.py | 2 -- 4 files changed, 3 insertions(+), 7 deletions(-) diff --git a/scripts/lib/wic/imager/direct.py b/scripts/lib/wic/imager/direct.py index 8d4daece0d..a1b4249651 100644 --- a/scripts/lib/wic/imager/direct.py +++ b/scripts/lib/wic/imager/direct.py @@ -229,6 +229,9 @@ class DirectImageCreator(BaseImageCreator): fstab_path = self._write_fstab(self.rootfs_dir.get("ROOTFS_DIR")) + shutil.rmtree(self.workdir) + os.mkdir(self.workdir) + for part in parts: # get rootfs size from bitbake variable if it's not set in .ks file if not part.size: diff --git a/scripts/lib/wic/plugins/source/bootimg-efi.py b/scripts/lib/wic/plugins/source/bootimg-efi.py index 125c943d12..a4734c9b36 100644 --- a/scripts/lib/wic/plugins/source/bootimg-efi.py +++ b/scripts/lib/wic/plugins/source/bootimg-efi.py @@ -142,8 +142,6 @@ class BootimgEFIPlugin(SourcePlugin): Called before do_prepare_partition(), creates loader-specific config """ hdddir = "%s/hdd/boot" % cr_workdir - rm_cmd = "rm -rf %s" % cr_workdir - exec_cmd(rm_cmd) install_cmd = "install -d %s/EFI/BOOT" % hdddir exec_cmd(install_cmd) diff --git a/scripts/lib/wic/plugins/source/bootimg-partition.py b/scripts/lib/wic/plugins/source/bootimg-partition.py index bc2ca0f6fa..b76c1211ae 100644 --- a/scripts/lib/wic/plugins/source/bootimg-partition.py +++ b/scripts/lib/wic/plugins/source/bootimg-partition.py @@ -71,9 +71,6 @@ class BootimgPartitionPlugin(SourcePlugin): - copies all files listed in IMAGE_BOOT_FILES variable """ hdddir = "%s/boot" % cr_workdir - rm_cmd = "rm -rf %s/boot" % cr_workdir - exec_cmd(rm_cmd) - install_cmd = "install -d %s" % hdddir exec_cmd(install_cmd) diff --git a/scripts/lib/wic/plugins/source/bootimg-pcbios.py b/scripts/lib/wic/plugins/source/bootimg-pcbios.py index a1bfa2671e..5b719bf3bb 100644 --- a/scripts/lib/wic/plugins/source/bootimg-pcbios.py +++ b/scripts/lib/wic/plugins/source/bootimg-pcbios.py @@ -78,8 +78,6 @@ class BootimgPcbiosPlugin(SourcePlugin): Called before do_prepare_partition(), creates syslinux config """ hdddir = "%s/hdd/boot" % cr_workdir - rm_cmd = "rm -rf " + cr_workdir - exec_cmd(rm_cmd) install_cmd = "install -d %s" % hdddir exec_cmd(install_cmd) -- cgit 1.2.3-korg