def create(self, *args, **kwargs): """ Create the format. """ try: Format.create(self, *args, **kwargs) # Consider use of -Z|--zero # -f|--force or -y|--yes may be required # lvm has issues with persistence of metadata, so here comes the # hammer... Format.destroy(self, *args, **kwargs) lvm.pvcreate(self.device) except Exception, msg: raise PhysicalVolumeError("Create device failed!", self.device)
def destroy(self, *args, **kwargs): """ Destroy the format. """ if not self.exists: raise PhysicalVolumeError("format has not been created", self.device) if self.status: raise PhysicalVolumeError("device is active", self.device) # FIXME: verify path exists? try: lvm.pvremove(self.device) except lvm.LVMError: Format.destroy(self, *args, **kwargs) self.exists = False self.notifyKernel()