[gnome-continuous-yocto/gnomeostree-3.28-rocko: 7611/8267] wic: implement ext fs support for 'wic rm'
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 7611/8267] wic: implement ext fs support for 'wic rm'
- Date: Sun, 17 Dec 2017 06:29:28 +0000 (UTC)
commit 2c16117dce6b760f165f7522516356f74b3d8904
Author: Ed Bartosh <ed bartosh linux intel com>
Date: 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.
(From OE-Core rev: be530b7c7beae6f9fc95eed245cb37066d56581e)
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>
scripts/lib/wic/engine.py | 27 ++++++++++++++++-----------
1 files 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):
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]