def get_hierarchy(self, devices):
regions = set()
cells = set()
labels = set()
for device in devices:
if device.region not in regions:
regions.add(device.region)
if device.cell:
if device.cell not in cells:
cells.add(device.cell)
for label in device.labels:
if label not in labels:
labels.add(label)
regions = sorted(regions, key=attrgetter('name'))
cells = sorted(cells, key=attrgetter('name'))
labels = sorted(labels, key=attrgetter('label'))
devices = sorted(devices, key=attrgetter('ip_address'))
return regions, cells, labels, devices
评论列表
文章目录