From d4d574e351331757e2aca729412ab5b8e965eafc Mon Sep 17 00:00:00 2001 From: Jeffrey Townsend Date: Thu, 15 Dec 2016 16:09:50 +0000 Subject: [PATCH] Add subcommand "rw" This subcommand can be used to execute a shell command under read-write context. For example: #> onlfs rw images rm /mnt/onl/images/*.swi --- .../src/python/onl/mounts/__init__.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/packages/base/all/vendor-config-onl/src/python/onl/mounts/__init__.py b/packages/base/all/vendor-config-onl/src/python/onl/mounts/__init__.py index 3d0a2a6d..7f33e0c3 100755 --- a/packages/base/all/vendor-config-onl/src/python/onl/mounts/__init__.py +++ b/packages/base/all/vendor-config-onl/src/python/onl/mounts/__init__.py @@ -273,6 +273,17 @@ class OnlMountManager(object): o.init() o.mount(args.labels, mode=mode) + @staticmethod + def cmdRw(args, register=False): + if register: + p = args.add_parser('rw') + p.add_argument("label") + p.add_argument("cmd", nargs='+') + p.set_defaults(func=OnlMountManager.cmdRw) + else: + with OnlMountContextReadWrite(args.label, logger=None): + rc = subprocess.call(" ".join(args.cmd), shell=True) + sys.exit(rc) @staticmethod def cmdFsck(args, register=False): @@ -366,4 +377,3 @@ class OnlOnieBootContext(MountContext): if not os.path.exists(mdir): os.makedirs(mdir) MountContext.__init__(self, device, mdir, mode, logger) -