--- a/pvl/backup/lvm.py Sat Feb 16 21:40:44 2013 +0200
+++ b/pvl/backup/lvm.py Sat Feb 16 21:41:42 2013 +0200
@@ -35,8 +35,14 @@
# VG name
name = None
- def __init__ (self, name) :
+ def __init__ (self, name, sudo=None) :
+ """
+ name - VG name
+ sudo - invoke sudo
+ """
+
self.name = name
+ self.sudo = sudo
def lv_name (self, lv) :
"""
@@ -60,7 +66,7 @@
log.debug("{cmd} {opts} {args}".format(cmd=cmd, args=args, opts=opts))
# invoke
- invoke(self.LVM, [cmd] + optargs(*args, **opts))
+ invoke(self.LVM, [cmd] + optargs(*args, **opts), sudo=self.sudo)
def volume (self, name) :
"""
--- a/pvl/backup/mount.py Sat Feb 16 21:40:44 2013 +0200
+++ b/pvl/backup/mount.py Sat Feb 16 21:41:42 2013 +0200
@@ -2,7 +2,7 @@
Mount filesystems.
"""
-from pvl.backup.invoke import command
+from pvl.backup.invoke import invoke, optargs, command
import contextlib
import os, os.path
@@ -24,16 +24,18 @@
UMOUNT = '/bin/umount'
- def __init__ (self, dev, mnt, readonly=False) :
+ def __init__ (self, dev, mnt, readonly=False, sudo=None) :
"""
dev - device path
mnt - mount path
readonly - mount readonly
+ sudo - invoke sudo
"""
self.dev = dev
self.mnt = mnt
self.readonly = readonly
+ self.sudo = sudo
@property
def path (self) :
@@ -66,7 +68,7 @@
raise MountError("Device does not exist: {dev}".format(dev=self.dev))
# mount
- command(self.MOUNT, self.dev, self.mnt, options=self.options())
+ invoke(self.MOUNT, optargs(self.dev, self.mnt, options=self.options()), sudo=self.sudo)
def close (self) :
"""
@@ -78,7 +80,7 @@
raise MountError("Mountpoint is not mounted: {mnt}".format(mnt=self.mnt))
# umount
- command(self.UMOUNT, self.mnt)
+ invoke(self.UMOUNT, optargs(self.mnt), sudo=self.sudo)
def __repr__ (self) :
return "Mount(dev={dev}, mnt={mnt})".format(