X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plugins%2Frawdisk.py;h=90f267a148537cea3c2585316b23553938d5b5e5;hb=570d234b7d7b40416b296de71225f28c826ee991;hp=f64affec3f8b2ee619993b94750abd9fa2c65778;hpb=55afbcaa2f8e9646bec3962e406f150f5d31b47b;p=nodemanager.git diff --git a/plugins/rawdisk.py b/plugins/rawdisk.py index f64affe..90f267a 100644 --- a/plugins/rawdisk.py +++ b/plugins/rawdisk.py @@ -33,31 +33,31 @@ def get_unused_devices(): in_vg.extend(map(lambda x: x.replace("!", "/"), os.listdir("/sys/block/%s/slaves" % i))) # Read the list of partitions - partitions = file("/proc/partitions", "r") - pat = re.compile("\s+") - while True: - buf = partitions.readline() - if buf == "": - break - buf = buf.strip() - fields = re.split(pat, buf) - dev = fields[-1] - if (not dev.startswith("dm-") and dev not in in_vg and - os.path.exists("/dev/%s" % dev) and - (os.minor(os.stat("/dev/%s" % dev).st_rdev) % 2) != 0): - devices.append("/dev/%s" % dev) + with open("/proc/partitions") as partitions: + pat = re.compile("\s+") + while True: + buf = partitions.readline() + if buf == "": + break + buf = buf.strip() + fields = re.split(pat, buf) + dev = fields[-1] + if (not dev.startswith("dm-") and dev not in in_vg and + os.path.exists("/dev/%s" % dev) and + (os.minor(os.stat("/dev/%s" % dev).st_rdev) % 2) != 0): + devices.append("/dev/%s" % dev) partitions.close() return devices def GetSlivers(data, config=None, plc=None): if 'slivers' not in data: - logger.log_missing_data("rawdisk.GetSlivers",'slivers') + logger.log_missing_data("rawdisk.GetSlivers", 'slivers') return devices = get_unused_devices() for sliver in data['slivers']: for attribute in sliver['attributes']: - name = attribute.get('tagname',attribute.get('name','')) + name = attribute.get('tagname', attribute.get('name', '')) if name == 'rawdisk': for i in devices: st = os.stat(i)