[oe-commits] [openembedded-core] 18/59: wic: implement ext fs support for 'wic rm'
git at git.openembedded.org
git at git.openembedded.org
Mon Sep 11 16:31:09 UTC 2017
This is an automated email from the git hooks/post-receive script.
rpurdie pushed a commit to branch master
in repository openembedded-core.
commit be530b7c7beae6f9fc95eed245cb37066d56581e
Author: Ed Bartosh <ed.bartosh at linux.intel.com>
AuthorDate: Tue Sep 5 14:54:38 2017 +0300
wic: implement ext fs support for 'wic rm'
Implemented removing files or directories from the ext
partition using debugfs tool.
Signed-off-by: Ed Bartosh <ed.bartosh at linux.intel.com>
Signed-off-by: Ross Burton <ross.burton at intel.com>
---
scripts/lib/wic/engine.py | 27 ++++++++++++++++-----------
1 file changed, 16 insertions(+), 11 deletions(-)
diff --git a/scripts/lib/wic/engine.py b/scripts/lib/wic/engine.py
index 9ebd93a..edcfab3 100644
--- a/scripts/lib/wic/engine.py
+++ b/scripts/lib/wic/engine.py
@@ -339,18 +339,23 @@ class Disk:
def remove(self, pnum, path):
"""Remove files/dirs from the partition."""
partimg = self._get_part_image(pnum)
- cmd = "{} -i {} ::{}".format(self.mdel, partimg, path)
- try:
- exec_cmd(cmd)
- except WicError as err:
- if "not found" in str(err) or "non empty" in str(err):
- # mdel outputs 'File ... not found' or 'directory .. non empty"
- # try to use mdeltree as path could be a directory
- cmd = "{} -i {} ::{}".format(self.mdeltree,
- partimg, path)
+ if self.partitions[pnum].fstype.startswith('ext'):
+ exec_cmd("{} {} -wR 'rm {}'".format(self.debugfs,
+ self._get_part_image(pnum),
+ path), as_shell=True)
+ else: # fat
+ cmd = "{} -i {} ::{}".format(self.mdel, partimg, path)
+ try:
exec_cmd(cmd)
- else:
- raise err
+ except WicError as err:
+ if "not found" in str(err) or "non empty" in str(err):
+ # mdel outputs 'File ... not found' or 'directory .. non empty"
+ # try to use mdeltree as path could be a directory
+ cmd = "{} -i {} ::{}".format(self.mdeltree,
+ partimg, path)
+ exec_cmd(cmd)
+ else:
+ raise err
self._put_part_image(pnum)
def write(self, target, expand):
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list