Changeset 9593 for src/django_gheat/gheat/management/commands
- Timestamp:
- Aug 28, 2011, 1:34:06 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/django_gheat/gheat/management/commands/import_nodes.py
r9590 r9593 3 3 # 4 4 # Script for importing nodes from yaml information generated by gformat.py 5 # 6 # Example: $ ~/wleiden/node-config/genesis/tools/gformat.py full-export | 7 # ./manage.py import_nodes - 5 8 # 6 9 # Rick van der Zwet <info@rickvanderzwet.nl> … … 25 28 args = '[<filename>]' 26 29 help = 'Specify - to read from stdin' 30 option_list = BaseCommand.option_list + ( 31 make_option('-g', '--debug', dest='debug', default='False', help="Debug", action="store_true"), 32 ) 27 33 28 34 def handle(self, *args, **options): 35 if options['debug']: 36 logger.setLevel(logging.DEBUG) 29 37 if len(args) == 0: 30 38 self.print_help(sys.argv[0],sys.argv[1]) … … 46 54 hosts = yaml.load(fh) 47 55 for host,items in hosts.iteritems(): 48 node, created = Node.objects.get_or_create(name=host, 49 latitude=items['latitude'],longitude=items['longitude']) 56 for iface_key in [x for x in items.keys() if x.startswith('iface_')]: 57 if items[iface_key].has_key('ssid'): 58 org = Organization.get_by_ssid(items[iface_key]['ssid']) 59 if org: break 60 logger.error("NO Organization for SSID '%s'", items[iface_key]['ssid']) 61 62 if not org: 63 logger.warning("NO Organization for Node '%s'", host) 64 65 node, created = Node.objects.get_or_create(name=host) 50 66 if created: 51 logger.info("Created Node '%s'" % node)) 52 logger.info("Processed %s items" % len(hosts)) 67 logger.info("Created Node '%s'", node) 68 node.latitude = items['latitude'] 69 node.longitude = items['longitude'] 70 node.organization = org 71 node.save() 72 logger.info("Processed %s items", len(hosts)) 53 73
Note:
See TracChangeset
for help on using the changeset viewer.