def createVG(self, vgName, devices, initialTag, metadataSize, force=False): # Convert params from MB to bytes to match other fields metadataSize <<= 20 extentsize = sc.VG_EXTENT_SIZE_MB << 20 for dev in devices: self._create_pv(dev, vgName, self._PV_SIZE) pv_name = (tuple(_fqpvname(pdev) for pdev in real_lvm._normalizeargs(devices))) extent_count = self._calc_vg_pe_count(vgName) size = extent_count * self._PV_PE_SIZE vg_attr = dict(permission='w', resizeable='z', exported='-', partial='-', allocation='n', clustered='-') vg_md = dict(uuid=fake_lvm_uuid(), name=vgName, attr=vg_attr, size=str(size), free=str(size), extent_size=str(extentsize), extent_count=str(extent_count), free_count=str(extent_count), tags=(initialTag,), vg_mda_size=str(metadataSize), vg_mda_free=None, lv_count='0', pv_count=str(len(devices)), pv_name=pv_name, writeable=True, partial='OK') self.vgmd[vgName] = vg_md for dev in devices: self.pvmd[dev]['vg_uuid'] = vg_md['uuid']