def run(self): rrdTemplates = [] self.zenpack = None if self.options.zenpack: self.zenpack = self.dmd.ZenPackManager.packs._getOb( self.options.zenpack, None) if not self.zenpack: msg = "%s is not a valid Zenpack. Exiting...." print msg % self.options.zenpack sys.exit(1) if not self.zenpack: packs = self.dmd.ZenPackManager.packs() for i, pack in enumerate(packs): print "\t %s: %s" % (i + 1, pack.id) input = raw_input("Which zenpack would you like to export? ") input = int(input) if (0 < input < len(packs) + 1): self.zenpack = packs[input - 1] else: print "Please select an integer between 1 and %s" % len(packs) sys.exit(1) packables = eliminateDuplicates(self.zenpack.packables()) for packable in packables: if isinstance(packable, DeviceClass): for rrdTemplate in packable.getAllRRDTemplates(): rrdTemplates.append(rrdTemplate) elif isinstance(packable, RRDTemplate): rrdTemplates.append(packable) TemplatesToJSONFile(self.dmd, rrdTemplates, self.options.filename)
def run(self): if self.options.zenpack: self.zenpack = self.dmd.ZenPackManager.packs._getOb( self.options.zenpack, None) if not self.zenpack: print "%s is not a valid Zenpack. Exiting...." % self.options.zenpack sys.exit(1) packables = eliminateDuplicates(self.zenpack.packables()) for obj in packables: deviceClasses = [] if isinstance(obj, DeviceClass): deviceClasses = obj.getSubOrganizers() deviceClasses.insert(0, obj) for dc in deviceClasses: xml = StringIO() dc.exportXmlProperties(xml) xml.reset() xmldoc = "<obj>%s</obj>" % xml.read().strip() tree = etree.parse(StringIO(xmldoc)) dc = IInfo(dc) print dc.uid import pdb pdb.set_trace() for obj in tree.xpath('//property[@type="lines"]')
def run(self): if self.options.zenpack: self.zenpack = self.dmd.ZenPackManager.packs._getOb(self.options.zenpack, None) if not self.zenpack: print "%s is not a valid Zenpack. Exiting...." % self.options.zenpack sys.exit(1) xml = StringIO() # Write out packable objects # TODO: When the DTD gets created, add the reference here xml.write("""<?xml version="1.0"?>\n""") xml.write("<objects>\n") packables = eliminateDuplicates(self.zenpack.packables()) for obj in packables: # obj = aq_base(obj) xml.write('<!-- %r -->\n' % (obj.getPrimaryPath(),)) obj.exportXml(xml,['devices','networks','pack'],True) xml.write("</objects>\n") objects = file(self.options.filename, 'w') objects.write(xml.getvalue()) objects.close()
def run(self): if self.options.zenpack: self.zenpack = self.dmd.ZenPackManager.packs._getOb( self.options.zenpack, None) if not self.zenpack: print "%s is not a valid Zenpack. Exiting...." % self.options.zenpack sys.exit(1) xml = StringIO() # Write out packable objects # TODO: When the DTD gets created, add the reference here xml.write("""<?xml version="1.0"?>\n""") xml.write("<objects>\n") packables = eliminateDuplicates(self.zenpack.packables()) for obj in packables: # obj = aq_base(obj) xml.write('<!-- %r -->\n' % (obj.getPrimaryPath(), )) obj.exportXml(xml, ['devices', 'networks', 'pack'], True) xml.write("</objects>\n") objects = file(self.options.filename, 'w') objects.write(xml.getvalue()) objects.close()