Mercurial > mozilla > hg > licenser
comparison licenser/main.py @ 3:e700bd2ec289
finish basic structure
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Mon, 10 May 2010 12:17:38 -0700 |
parents | b8d620fa1116 |
children | f7d485cedc80 |
comparison
equal
deleted
inserted
replaced
2:b8d620fa1116 | 3:e700bd2ec289 |
---|---|
20 print >> sys.stderr, "Couldn't load license '%s' [%s]" % (entry_point.name, e) | 20 print >> sys.stderr, "Couldn't load license '%s' [%s]" % (entry_point.name, e) |
21 continue | 21 continue |
22 licenses[entry_point.name] = license | 22 licenses[entry_point.name] = license |
23 return licenses | 23 return licenses |
24 | 24 |
25 def print_licenses(self, licenses): | 25 def print_licenses(licenses): |
26 for i in sorted(licenses.keys()): | 26 for i in sorted(licenses.keys()): |
27 doc = getattr(licenses[i], '__doc__') | 27 doc = getattr(licenses[i], '__doc__') |
28 if doc: | 28 if doc: |
29 print '%s: %s' % (i, doc) | 29 print '%s: %s' % (i, doc) |
30 else: | 30 else: |
32 | 32 |
33 | 33 |
34 def main(args=sys.argv[1:]): | 34 def main(args=sys.argv[1:]): |
35 usage = '%prog [options] directory' | 35 usage = '%prog [options] directory' |
36 parser = OptionParser(usage, description=__doc__) | 36 parser = OptionParser(usage, description=__doc__) |
37 parser.add_option('-d', '--debug', action='store_true', default=False, | 37 # parser.add_option('-d', '--debug', action='store_true', default=False, |
38 help="debug the application") | 38 # help="debug the application") |
39 parser.add_option('-l', '--license', | 39 parser.add_option('-l', '--license', |
40 help="license to use") | 40 help="license to use") |
41 parser.add_option('--list', action='store_true', default=False, | 41 parser.add_option('--list', action='store_true', default=False, |
42 help="list available licenses") | 42 help="list available licenses") |
43 parser.add_option('-p', '--print', dest='_print', | |
44 action='store_true', default=False, | |
45 help="print the chosen license") | |
43 options, args = parser.parse_args(args) | 46 options, args = parser.parse_args(args) |
44 | 47 |
45 licenses = license_list() | 48 licenses = license_list() |
46 | 49 |
47 if options.list: # list the licenses | 50 if options.list: # list the licenses |
52 parser.error("Must specify --license") | 55 parser.error("Must specify --license") |
53 if options.license not in licenses: | 56 if options.license not in licenses: |
54 print_licenses(licenses) | 57 print_licenses(licenses) |
55 | 58 |
56 license = licenses[options.license]() | 59 license = licenses[options.license]() |
60 | |
61 if options._print: | |
62 license.print_license() | |
63 sys.exit(0) | |
57 | 64 |
58 | 65 variables = license.obtain_variables() |
59 | 66 |
60 for directory in args: | 67 for directory in args: |
61 filelist = files(directory) | 68 license.interpolate(directory, variables) |
62 | 69 |
63 if __name__ == '__main__': | 70 if __name__ == '__main__': |
64 main() | 71 main() |