diff options
author | Guido Günther <agx@sigxcpu.org> | 2011-02-06 17:36:14 +0100 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2011-02-09 20:31:12 +0100 |
commit | 0212ccfbfcee55d61058cbe57e69f44510c39b6a (patch) | |
tree | e1689f4440604cbc59d8d1f086551b7a444f7598 /git-buildpackage | |
parent | 14fdbce0a71f867d3809f3cf30b836ae57a7c7a4 (diff) |
Split out command line parsing
to honor pycheckers sensible request for smaller functions.
Git-Dch: Ignore
Diffstat (limited to 'git-buildpackage')
-rwxr-xr-x | git-buildpackage | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/git-buildpackage b/git-buildpackage index 8e8af02b..d9bdfdfd 100755 --- a/git-buildpackage +++ b/git-buildpackage @@ -216,12 +216,7 @@ def setup_pbuilder(options): os.environ['ARCH'] = options.pbuilder_arch -def main(argv): - changelog = 'debian/changelog' - retval = 0 - prefix = "git-" - cp = None - +def parse_args(argv, prefix): args = [ arg for arg in argv[1:] if arg.find('--%s' % prefix) == 0 ] dpkg_args = [ arg for arg in argv[1:] if arg.find('--%s' % prefix) == -1 ] @@ -234,7 +229,7 @@ def main(argv): parser = GbpOptionParser(command=os.path.basename(argv[0]), prefix=prefix) except ConfigParser.ParsingError, err: gbp.log.err(err) - return 1 + return None, None, None tag_group = GbpOptionGroup(parser, "tag options", "options related to git tag creation") branch_group = GbpOptionGroup(parser, "branch options", "branch layout options") @@ -296,16 +291,30 @@ def main(argv): export_group.add_option("--git-dont-purge", action="store_false", dest="purge", default=True, help="retain exported package build directory") export_group.add_boolean_config_file_option(option_name="overlay", dest="overlay") - (options, args) = parser.parse_args(args) - gbp.log.setup(options.color, options.verbose) + options, args = parser.parse_args(args) + gbp.log.setup(options.color, options.verbose) if options.retag: if not options.tag and not options.tag_only: gbp.log.err("'--%sretag' needs either '--%stag' or '--%stag-only'" % (prefix, prefix, prefix)) - return 1 + return None, None, None if options.overlay and not options.export_dir: - parser.error("Overlay must be used with --git-export-dir") + gbp.log.err("Overlay must be used with --git-export-dir") + return None, None, None + + return options, args, dpkg_args + + +def main(argv): + retval = 0 + changelog = 'debian/changelog' + prefix = "git-" + cp = None + + options, gbp_args, dpkg_args = parse_args(argv, prefix) + if not options: + return 1 try: repo = GitRepository(os.path.curdir) |