wic: Make sure file exists before removing it

Bunch of os.remove calls were added to the partition.py lately.
They're causing wic to fail with OSError: [Errno 2] No such file or directory
if file doesn't exist.

Added check for file existence to all recently added calls of
os.remove. That should fix this regression.

(From OE-Core rev: 75162b05b5ad9aac307f7911caecb2b8a017acbf)

(From OE-Core rev: 41f08393643ceb2607cad44d2c485b3dc9da7ec9)

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ed Bartosh 2015-05-21 10:29:52 +03:00 committed by Richard Purdie
parent 417c86b42b
commit 6dd71217a8

View File

@ -231,7 +231,7 @@ class Wic_PartData(Mic_PartData):
image_rootfs = rootfs_dir
rootfs = "%s/rootfs_%s.%s" % (cr_workdir, self.label ,self.fstype)
os.remove(rootfs)
os.path.isfile(rootfs) and os.remove(rootfs)
du_cmd = "du -ks %s" % image_rootfs
out = exec_cmd(du_cmd)
actual_rootfs_size = int(out.split()[0])
@ -283,7 +283,7 @@ class Wic_PartData(Mic_PartData):
image_rootfs = rootfs_dir
rootfs = "%s/rootfs_%s.%s" % (cr_workdir, self.label, self.fstype)
os.remove(rootfs)
os.path.isfile(rootfs) and os.remove(rootfs)
du_cmd = "du -ks %s" % image_rootfs
out = exec_cmd(du_cmd)
actual_rootfs_size = int(out.split()[0])
@ -328,7 +328,7 @@ class Wic_PartData(Mic_PartData):
image_rootfs = rootfs_dir
rootfs = "%s/rootfs_%s.%s" % (cr_workdir, self.label, self.fstype)
os.remove(rootfs)
os.path.isfile(rootfs) and os.remove(rootfs)
du_cmd = "du -bks %s" % image_rootfs
out = exec_cmd(du_cmd)
blocks = int(out.split()[0])
@ -381,7 +381,7 @@ class Wic_PartData(Mic_PartData):
image_rootfs = rootfs_dir
rootfs = "%s/rootfs_%s.%s" % (cr_workdir, self.label ,self.fstype)
os.remove(rootfs)
os.path.isfile(rootfs) and os.remove(rootfs)
squashfs_cmd = "mksquashfs %s %s -noappend" % \
(image_rootfs, rootfs)
exec_native_cmd(pseudo + squashfs_cmd, native_sysroot)
@ -420,7 +420,7 @@ class Wic_PartData(Mic_PartData):
"""
fs = "%s/fs_%s.%s" % (cr_workdir, self.label, self.fstype)
os.remove(fs)
os.path.isfile(fs) and os.remove(fs)
dd_cmd = "dd if=/dev/zero of=%s bs=1k seek=%d count=0" % \
(fs, self.size)
exec_cmd(dd_cmd)
@ -448,7 +448,7 @@ class Wic_PartData(Mic_PartData):
"""
fs = "%s/fs_%s.%s" % (cr_workdir, self.label, self.fstype)
os.remove(fs)
os.path.isfile(fs) and os.remove(fs)
dd_cmd = "dd if=/dev/zero of=%s bs=1k seek=%d count=0" % \
(fs, self.size)
exec_cmd(dd_cmd)
@ -473,7 +473,7 @@ class Wic_PartData(Mic_PartData):
Prepare an empty vfat partition.
"""
fs = "%s/fs_%s.%s" % (cr_workdir, self.label, self.fstype)
os.remove(fs)
os.path.isfile(fs) and os.remove(fs)
blocks = self.size
@ -500,7 +500,7 @@ class Wic_PartData(Mic_PartData):
"Proceeding as requested." % self.mountpoint)
fs = "%s/fs_%s.%s" % (cr_workdir, self.label, self.fstype)
os.remove(fs)
os.path.isfile(fs) and os.remove(fs)
# it is not possible to create a squashfs without source data,
# thus prepare an empty temp dir that is used as source