tero@648: #!/usr/bin/env python tero@648: tero@648: """ tero@648: Extract a list of $INCLUDE paths from a zone file. tero@648: """ tero@648: tero@648: import logging; log = logging.getLogger('pvl.dns-includes') tero@648: import optparse tero@648: import pvl.args tero@648: import pvl.dns tero@648: import pvl.dns.process tero@648: tero@648: def main (argv): tero@648: parser = optparse.OptionParser(main.__doc__) tero@648: parser.add_option_group(pvl.args.parser(parser)) tero@648: parser.add_option_group(pvl.dns.process.optparser(parser)) tero@648: tero@648: parser.add_option('--include-path', metavar='PATH', tero@648: help="Rewrite includes to given absolute path") tero@648: tero@648: # input tero@648: options, args = pvl.args.parse(parser, argv) tero@648: tero@648: # process tero@648: zone = list(pvl.dns.process.apply_zone(options, args)) tero@648: tero@648: if options.include_path: tero@648: log.info("Set zone include path: %s", options.include_path) tero@648: tero@648: zone = list(pvl.dns.process.zone_includes_path(zone, options.include_path)) tero@648: tero@648: for include in pvl.dns.process.zone_includes(zone): tero@648: # output include path only tero@648: print include tero@648: tero@648: return 0 tero@648: tero@648: if __name__ == '__main__': tero@648: pvl.args.main(main)