X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-base.git/blobdiff_plain/0fbc4842a9e9545cb8f3111e25ece14739507266..d044f3d9519da351fba2eca7c58c51ad05bed88e:/scripts/invirt-mako-render diff --git a/scripts/invirt-mako-render b/scripts/invirt-mako-render index 1eaeede..1686e6f 100755 --- a/scripts/invirt-mako-render +++ b/scripts/invirt-mako-render @@ -1,40 +1,32 @@ -#!/usr/bin/python +#!/usr/bin/env python3 # Modified from mako-render by gdb. # TODO: set the lookup path dynamically. -def render(data): - from mako.template import Template - from mako.lookup import TemplateLookup - - lookup = TemplateLookup(['.', '/etc/apache2/conf.invirt']) - return Template(data, lookup=lookup).render() +import sys +import argparse -def main(argv=None): - from os.path import isfile - from sys import stdin +from mako.template import Template +from mako.lookup import TemplateLookup - if argv is None: - import sys - argv = sys.argv - from optparse import OptionParser +def render(data): + lookup = TemplateLookup(['.', '/etc/apache2/conf.invirt']) + return Template(data, lookup=lookup).render() - parser = OptionParser("usage: %prog [FILENAME]") +def main(): + parser = argparse.ArgumentParser(description='Render mako template') + parser.add_argument('filename', nargs='?', default=None) - opts, args = parser.parse_args(argv[1:]) - if len(args) not in (0, 1): - parser.error("wrong number of arguments") # Will exit + args = parser.parse_args() - if (len(args) == 0) or (args[0] == "-"): - fo = stdin + if args.filename == '-' or args.filename is None: + fo = sys.stdin else: - filename = args[0] - if not isfile(filename): - raise SystemExit("error: can't find %s" % filename) - fo = open(filename) + fo = open(args.filename) data = fo.read() - print render(data) + print(render(data)) + -if __name__ == "__main__": +if __name__ == '__main__': main()