def tmpVolumeGroup(self): pvs = [copy.deepcopy(pv) for pv in self.parent.pvs] vg = VolumeGroup('tmp-%s' % self.origrequest.name, parents=pvs, peSize=self.parent.peSize) for lv in self.parent.lvs.values(): logicalVolume = LogicalVolume(lv['name'], vg, format=lv['format'], size=lv['size'], exists=lv['exists'], stripes=lv['stripes'], logSize=lv['logSize'], snapshotSpace=lv['snapshotSpace']) logicalVolume.originalFormat = lv['originalFormat'] return vg
def newVolumeGroup(self, *args, **kwargs): """ Return a new VolumeGroup instance. """ pvs = kwargs.pop("pvs", []) for pv in pvs: if pv not in self.devices: raise ValueError("pv is not in the device tree") if kwargs.has_key("name"): name = kwargs.pop("name") else: name = self.createSuggestedVolumeGroupName() if name in [d.name for d in self.devices]: raise ValueError("name already in use") return VolumeGroup(name, pvs, *args, **kwargs)