From 86fdfbaba04b6f87f87fecd1d81fd79eadc02ee2 Mon Sep 17 00:00:00 2001 From: Fabio Erculiani Date: Mon, 17 Oct 2011 15:36:49 +0200 Subject: [PATCH] [eit.*] split ArgumentParser object creation from parsing code --- server/eit/commands/add.py | 6 +++++- server/eit/commands/branch.py | 9 +++++++-- server/eit/commands/bump.py | 14 +++++++++++--- server/eit/commands/checkout.py | 6 +++++- server/eit/commands/cleanup.py | 6 +++++- server/eit/commands/command.py | 7 +++++++ server/eit/commands/commit.py | 6 +++++- server/eit/commands/cp.py | 6 +++++- server/eit/commands/deps.py | 6 +++++- server/eit/commands/files.py | 6 +++++- server/eit/commands/graph.py | 6 +++++- server/eit/commands/init.py | 7 ++++++- server/eit/commands/inject.py | 6 +++++- server/eit/commands/key.py | 12 +++++++----- server/eit/commands/list.py | 9 ++++++--- server/eit/commands/lock.py | 8 ++++++-- server/eit/commands/log.py | 6 +++++- server/eit/commands/match.py | 6 +++++- server/eit/commands/merge.py | 8 +++++++- server/eit/commands/mv.py | 6 +++++- server/eit/commands/notice.py | 6 +++++- server/eit/commands/own.py | 6 +++++- server/eit/commands/push.py | 6 +++++- server/eit/commands/query.py | 15 ++++++++------- server/eit/commands/remove.py | 6 +++++- server/eit/commands/repack.py | 6 +++++- server/eit/commands/repo.py | 17 ++++++++++++++++- server/eit/commands/reset.py | 9 +++++++-- server/eit/commands/revgraph.py | 8 +++++++- server/eit/commands/search.py | 8 +++++++- server/eit/commands/status.py | 8 +++++++- server/eit/commands/test.py | 10 +++++++--- server/eit/commands/vacuum.py | 8 +++++++- 33 files changed, 208 insertions(+), 51 deletions(-) diff --git a/server/eit/commands/add.py b/server/eit/commands/add.py index 5b5d3cba0..76353a39d 100644 --- a/server/eit/commands/add.py +++ b/server/eit/commands/add.py @@ -27,7 +27,7 @@ class EitAdd(EitCommit): NAME = "add" ALIASES = [] - def parse(self): + def _get_parser(self): """ Overridden from EitCommit """ descriptor = EitCommandDescriptor.obtain_descriptor( EitAdd.NAME) @@ -44,7 +44,11 @@ class EitAdd(EitCommit): parser.add_argument("--quick", action="store_true", default=not self._ask, help=_("no stupid questions")) + return parser + def parse(self): + """ Overridden from EitCommit """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/branch.py b/server/eit/commands/branch.py index d40e5b3a8..7fd022e88 100644 --- a/server/eit/commands/branch.py +++ b/server/eit/commands/branch.py @@ -14,7 +14,7 @@ import sys import argparse from entropy.i18n import _ -from entropy.output import bold, purple, darkgreen, blue, brown, teal +from entropy.output import bold, purple, darkgreen, blue import entropy.tools @@ -38,7 +38,8 @@ class EitBranch(EitCommand): self._repository_id = None self._ask = True - def parse(self): + def _get_parser(self): + """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitBranch.NAME) parser = argparse.ArgumentParser( @@ -58,7 +59,11 @@ class EitBranch(EitCommand): parser.add_argument("--from", metavar="", help=_("from branch"), dest="frombranch", default=None) + return parser + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/bump.py b/server/eit/commands/bump.py index 9de0ad569..0798fb4d8 100644 --- a/server/eit/commands/bump.py +++ b/server/eit/commands/bump.py @@ -10,7 +10,6 @@ """ import sys -import os import argparse from entropy.output import darkgreen, blue @@ -28,7 +27,11 @@ class EitBump(EitCommand): NAME = "bump" ALIASES = [] - def parse(self): + def __init__(self, args): + EitCommand.__init__(self, args) + self._sync = False + + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitBump.NAME) @@ -40,12 +43,17 @@ class EitBump(EitCommand): parser.add_argument("repo", nargs='?', default=None, metavar="", help=_("repository")) parser.add_argument("--sync", action="store_true", - default=False, + default=self._sync, help=_("sync with remote repository")) + return parser + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: + sys.stderr.write("%s\n" % (err,)) return parser.print_help, [] self._sync = nsargs.sync diff --git a/server/eit/commands/checkout.py b/server/eit/commands/checkout.py index fe7a62d6c..c3931058d 100644 --- a/server/eit/commands/checkout.py +++ b/server/eit/commands/checkout.py @@ -28,7 +28,7 @@ class EitCheckout(EitCommand): NAME = "checkout" ALIASES = ["ci"] - def parse(self): + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitCheckout.NAME) @@ -39,7 +39,11 @@ class EitCheckout(EitCommand): parser.add_argument("repo", metavar="", help=_("repository")) + return parser + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/cleanup.py b/server/eit/commands/cleanup.py index 5de2a2da8..a4806fce1 100644 --- a/server/eit/commands/cleanup.py +++ b/server/eit/commands/cleanup.py @@ -28,7 +28,7 @@ class EitCleanup(EitCommand): NAME = "cleanup" ALIASES = ["cn", "clean"] - def parse(self): + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitCleanup.NAME) @@ -42,7 +42,11 @@ class EitCleanup(EitCommand): parser.add_argument("--quick", action="store_true", default=False, help=_("no stupid questions")) + return parser + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/command.py b/server/eit/commands/command.py index b65e4e244..bc8a99dbc 100644 --- a/server/eit/commands/command.py +++ b/server/eit/commands/command.py @@ -37,6 +37,13 @@ class EitCommand(object): def __init__(self, args): self._args = args + def _get_parser(self): + """ + This is the argparse parser setup method, it shall return + the ArgumentParser object that will be used by parse(). + """ + raise NotImplementedError() + def parse(self): """ Parse the actual arguments and return diff --git a/server/eit/commands/commit.py b/server/eit/commands/commit.py index a3f1d9cf4..cefb885b3 100644 --- a/server/eit/commands/commit.py +++ b/server/eit/commands/commit.py @@ -42,7 +42,7 @@ class EitCommit(EitCommand): # execute actions only for given atoms, if any self._packages = [] - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitCommit.NAME) parser = argparse.ArgumentParser( @@ -59,6 +59,10 @@ class EitCommit(EitCommand): default=not self._ask, help=_("no stupid questions")) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/cp.py b/server/eit/commands/cp.py index e7f1995ad..c2432e626 100644 --- a/server/eit/commands/cp.py +++ b/server/eit/commands/cp.py @@ -36,7 +36,7 @@ class EitCp(EitCommand): self._packages = [] self._copy = True - def parse(self): + def _get_parser(self): """ Overridden from EitCp """ descriptor = EitCommandDescriptor.obtain_descriptor( EitCp.NAME) @@ -56,7 +56,11 @@ class EitCp(EitCommand): help=_("include dependencies")) parser.add_argument("package", nargs='+', metavar="", help=_("package dependency")) + return parser + def parse(self): + """ Overridden from EitCp """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/deps.py b/server/eit/commands/deps.py index 448f2d0c5..8d4ccf42e 100644 --- a/server/eit/commands/deps.py +++ b/server/eit/commands/deps.py @@ -32,7 +32,7 @@ class EitDeps(EitCommand): EitCommand.__init__(self, args) self._packages = [] - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitDeps.NAME) parser = argparse.ArgumentParser( @@ -46,6 +46,10 @@ class EitDeps(EitCommand): help=_("inject into given repository"), dest="inrepo", default=None) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/files.py b/server/eit/commands/files.py index 7faa6d973..4c79ed376 100644 --- a/server/eit/commands/files.py +++ b/server/eit/commands/files.py @@ -33,7 +33,7 @@ class EitFiles(EitCommand): self._quiet = False self._packages = [] - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitFiles.NAME) parser = argparse.ArgumentParser( @@ -48,6 +48,10 @@ class EitFiles(EitCommand): default=self._quiet, help=_('quiet output, for scripting purposes')) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/graph.py b/server/eit/commands/graph.py index e27d0125d..b563b4349 100644 --- a/server/eit/commands/graph.py +++ b/server/eit/commands/graph.py @@ -38,7 +38,7 @@ class EitGraph(EitCommand): self._quiet = False self._repository_id = None - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitGraph.NAME) parser = argparse.ArgumentParser( @@ -58,6 +58,10 @@ class EitGraph(EitCommand): default=self._quiet, help=_('quiet output, for scripting purposes')) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/init.py b/server/eit/commands/init.py index e4196914a..b2229fd3c 100644 --- a/server/eit/commands/init.py +++ b/server/eit/commands/init.py @@ -28,7 +28,7 @@ class EitInit(EitCommand): NAME = "init" ALIASES = [] - def parse(self): + def _get_parser(self): """ Overridden from EitInit """ descriptor = EitCommandDescriptor.obtain_descriptor( EitInit.NAME) @@ -43,6 +43,11 @@ class EitInit(EitCommand): default=False, help=_("no stupid questions")) + return parser + + def parse(self): + """ Overridden from EitInit """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/inject.py b/server/eit/commands/inject.py index d8c8ffc8e..75ef8edfb 100644 --- a/server/eit/commands/inject.py +++ b/server/eit/commands/inject.py @@ -32,7 +32,7 @@ class EitInject(EitCommand): EitCommand.__init__(self, args) self._packages = [] - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitInject.NAME) parser = argparse.ArgumentParser( @@ -46,6 +46,10 @@ class EitInject(EitCommand): help=_("inject into given repository"), default=None) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/key.py b/server/eit/commands/key.py index edd083bde..9e203ebd5 100644 --- a/server/eit/commands/key.py +++ b/server/eit/commands/key.py @@ -10,12 +10,11 @@ """ import sys -import os import argparse from entropy.output import blue, purple, darkgreen, bold, brown, teal, \ darkred -from entropy.const import const_convert_to_rawstring, etpConst +from entropy.const import const_convert_to_rawstring from entropy.i18n import _ from entropy.security import Repository from entropy.tools import convert_unix_time_to_human_time @@ -37,7 +36,7 @@ class EitKey(EitCommand): self._nsargs = None self._gpg_msg_shown = False - def parse(self): + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitKey.NAME) @@ -104,6 +103,11 @@ class EitKey(EitCommand): help=_("private key path")) export_priv_parser.set_defaults(func=self._export_priv) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: @@ -411,8 +415,6 @@ class EitKey(EitCommand): entropy_server, repo_sec, True, entropy_server.repository(), key_path) - return 0 - def _export_priv(self, entropy_server): """ Actual Eit key export-private code. diff --git a/server/eit/commands/list.py b/server/eit/commands/list.py index 3b1ac472c..589ce9bf9 100644 --- a/server/eit/commands/list.py +++ b/server/eit/commands/list.py @@ -10,11 +10,10 @@ """ import sys -import os import argparse from entropy.i18n import _ -from entropy.output import brown, teal, purple, darkgreen, blue +from entropy.output import brown, teal, purple, darkgreen import entropy.dep @@ -38,7 +37,7 @@ class EitList(EitCommand): self._verbose = False self._injected = False - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitList.NAME) parser = argparse.ArgumentParser( @@ -58,6 +57,10 @@ class EitList(EitCommand): default=self._injected, help=_('only list injected packages')) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/lock.py b/server/eit/commands/lock.py index 265f4526f..13cbfe19f 100644 --- a/server/eit/commands/lock.py +++ b/server/eit/commands/lock.py @@ -13,7 +13,7 @@ import sys import argparse from entropy.i18n import _ -from entropy.output import darkgreen, brown, teal, purple, blue, darkred +from entropy.output import darkgreen, brown, purple, blue, darkred from entropy.transceivers import EntropyTransceiver from eit.commands.descriptor import EitCommandDescriptor @@ -37,7 +37,7 @@ class EitLock(EitCommand): self._quiet = False self._name = EitLock.NAME - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitLock.NAME) parser = argparse.ArgumentParser( @@ -60,6 +60,10 @@ class EitLock(EitCommand): default=self._quiet, help=_('quiet output, for scripting purposes')) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/log.py b/server/eit/commands/log.py index e42da1c63..de0961b44 100644 --- a/server/eit/commands/log.py +++ b/server/eit/commands/log.py @@ -29,7 +29,7 @@ class EitLog(EitCommand): ALIASES = [] ALLOW_UNPRIVILEGED = True - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitLog.NAME) parser = argparse.ArgumentParser( @@ -40,6 +40,10 @@ class EitLog(EitCommand): parser.add_argument("repo", nargs='?', default=None, metavar="", help=_("repository")) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/match.py b/server/eit/commands/match.py index b07f7c3b0..088358c0e 100644 --- a/server/eit/commands/match.py +++ b/server/eit/commands/match.py @@ -36,7 +36,7 @@ class EitMatch(EitCommand): from text_query import print_package_info self._pprinter = print_package_info - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitMatch.NAME) parser = argparse.ArgumentParser( @@ -51,6 +51,10 @@ class EitMatch(EitCommand): default=self._quiet, help=_('quiet output, for scripting purposes')) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/merge.py b/server/eit/commands/merge.py index bfd11534a..e2cc9844d 100644 --- a/server/eit/commands/merge.py +++ b/server/eit/commands/merge.py @@ -32,7 +32,7 @@ class EitMerge(EitCommand): self._merge_branch = None self._ask = True - def parse(self): + def _get_parser(self): """ Overridden from EitCommit """ descriptor = EitCommandDescriptor.obtain_descriptor( EitMerge.NAME) @@ -50,9 +50,15 @@ class EitMerge(EitCommand): default=not self._ask, help=_("no stupid questions")) + return parser + + def parse(self): + """ Overridden from EitCommit """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: + sys.stderr.write("%s\n" % (err,)) return parser.print_help, [] self._ask = not nsargs.quick diff --git a/server/eit/commands/mv.py b/server/eit/commands/mv.py index 66820ff2b..b5faf21a5 100644 --- a/server/eit/commands/mv.py +++ b/server/eit/commands/mv.py @@ -27,7 +27,7 @@ class EitMv(EitCp): NAME = "mv" ALIASES = [] - def parse(self): + def _get_parser(self): """ Overridden from EitMv """ descriptor = EitCommandDescriptor.obtain_descriptor( EitMv.NAME) @@ -47,6 +47,10 @@ class EitMv(EitCp): help=_("package names (all if none)"), default=None) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/notice.py b/server/eit/commands/notice.py index 6309a15e4..4ac4d6470 100644 --- a/server/eit/commands/notice.py +++ b/server/eit/commands/notice.py @@ -35,7 +35,7 @@ class EitNotice(EitCommand): EitCommand.__init__(self, args) self._repository_id = None - def parse(self): + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitNotice.NAME) @@ -66,6 +66,10 @@ class EitNotice(EitCommand): metavar="", help=_("repository")) show_parser.set_defaults(func=self._show) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/own.py b/server/eit/commands/own.py index ff57ceb19..5cd497251 100644 --- a/server/eit/commands/own.py +++ b/server/eit/commands/own.py @@ -38,7 +38,7 @@ class EitOwn(EitCommand): from text_query import search_belongs self._query_func = search_belongs - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitOwn.NAME) parser = argparse.ArgumentParser( @@ -56,6 +56,10 @@ class EitOwn(EitCommand): help=_("search packages in given repository"), dest="inrepo", default=None) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/push.py b/server/eit/commands/push.py index dd327e614..c67cde9fd 100644 --- a/server/eit/commands/push.py +++ b/server/eit/commands/push.py @@ -48,7 +48,7 @@ class EitPush(EitCommand): self._cleanup_only = False self._as_repository_id = None - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitPush.NAME) parser = argparse.ArgumentParser( @@ -69,6 +69,10 @@ class EitPush(EitCommand): group.add_argument("--as", metavar="", default=None, help=_("push as fake repository"), dest="asrepo") + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/query.py b/server/eit/commands/query.py index fcb17cf60..7e53af9d9 100644 --- a/server/eit/commands/query.py +++ b/server/eit/commands/query.py @@ -10,15 +10,11 @@ """ import sys -import os import argparse -from entropy.output import blue, purple, darkgreen, bold, brown, teal, \ - darkred -from entropy.const import const_convert_to_rawstring, etpConst +from entropy.output import purple, darkgreen, bold, brown, teal +from entropy.const import etpConst from entropy.i18n import _ -from entropy.security import Repository -from entropy.tools import convert_unix_time_to_human_time from eit.commands.descriptor import EitCommandDescriptor from eit.commands.command import EitCommand @@ -42,7 +38,7 @@ class EitQuery(EitCommand): from text_query import print_package_info self._pprint = print_package_info - def parse(self): + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitQuery.NAME) @@ -130,6 +126,11 @@ class EitQuery(EitCommand): help=_("package description")) desc_parser.set_defaults(func=self._desc) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/remove.py b/server/eit/commands/remove.py index 94c28ec8e..5190e8bf8 100644 --- a/server/eit/commands/remove.py +++ b/server/eit/commands/remove.py @@ -34,7 +34,7 @@ class EitRemove(EitCommand): self._nodeps = False self._ask = True - def parse(self): + def _get_parser(self): descriptor = EitCommandDescriptor.obtain_descriptor( EitRemove.NAME) parser = argparse.ArgumentParser( @@ -54,6 +54,10 @@ class EitRemove(EitCommand): default=not self._ask, help=_("no stupid questions")) + return parser + + def parse(self): + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/repack.py b/server/eit/commands/repack.py index 19c395acc..d54e20eaa 100644 --- a/server/eit/commands/repack.py +++ b/server/eit/commands/repack.py @@ -27,7 +27,7 @@ class EitRepack(EitCommit): NAME = "repack" ALIASES = ["rp"] - def parse(self): + def _get_parser(self): """ Overridden from EitCommit """ descriptor = EitCommandDescriptor.obtain_descriptor( EitRepack.NAME) @@ -41,7 +41,11 @@ class EitRepack(EitCommit): parser.add_argument("--in", metavar="", help=_("repack to given repository"), default=None, dest="into") + return parser + def parse(self): + """ Overridden from EitCommit """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/repo.py b/server/eit/commands/repo.py index 34836d665..46fbfdbe0 100644 --- a/server/eit/commands/repo.py +++ b/server/eit/commands/repo.py @@ -29,8 +29,23 @@ class EitRepo(EitCommand): ALIASES = [] ALLOW_UNPRIVILEGED = True + def _get_parser(self): + """ Overridden from EitCommand """ + descriptor = EitCommandDescriptor.obtain_descriptor( + EitRepo.NAME) + parser = argparse.ArgumentParser( + description=descriptor.get_description(), + formatter_class=argparse.RawDescriptionHelpFormatter, + prog="%s %s" % (sys.argv[0], EitRepo.NAME)) + return parser + def parse(self): - """ Overridden from EitRepo """ + """ Overridden from EitCommand """ + parser = self._get_parser() + try: + nsargs = parser.parse_args(self._args) + except IOError as err: + return parser.print_help, [] return self._call_locked, [self._void, None] def _void(self, entropy_server): diff --git a/server/eit/commands/reset.py b/server/eit/commands/reset.py index e1fd4fc9e..9d1214f25 100644 --- a/server/eit/commands/reset.py +++ b/server/eit/commands/reset.py @@ -33,8 +33,8 @@ class EitReset(EitPush): self._reset_repository_id = None self._local = False - def parse(self): - """ Overridden from EitPush """ + def _get_parser(self): + """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitReset.NAME) parser = argparse.ArgumentParser( @@ -51,6 +51,11 @@ class EitReset(EitPush): default=False, help=_("do not pull the remote repository")) + return parser + + def parse(self): + """ Overridden from EitPush """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/revgraph.py b/server/eit/commands/revgraph.py index 4cae306ef..f787b217a 100644 --- a/server/eit/commands/revgraph.py +++ b/server/eit/commands/revgraph.py @@ -38,7 +38,8 @@ class EitRevgraph(EitCommand): self._quiet = False self._repository_id = None - def parse(self): + def _get_parser(self): + """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitRevgraph.NAME) parser = argparse.ArgumentParser( @@ -58,6 +59,11 @@ class EitRevgraph(EitCommand): default=self._quiet, help=_('quiet output, for scripting purposes')) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/search.py b/server/eit/commands/search.py index fefb53aba..79ad413d5 100644 --- a/server/eit/commands/search.py +++ b/server/eit/commands/search.py @@ -37,7 +37,8 @@ class EitSearch(EitCommand): self._pprinter = print_package_info self._repository_id = None - def parse(self): + def _get_parser(self): + """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitSearch.NAME) parser = argparse.ArgumentParser( @@ -55,6 +56,11 @@ class EitSearch(EitCommand): default=self._quiet, help=_('quiet output, for scripting purposes')) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError: diff --git a/server/eit/commands/status.py b/server/eit/commands/status.py index b4a3191f0..7e06a20f8 100644 --- a/server/eit/commands/status.py +++ b/server/eit/commands/status.py @@ -33,7 +33,8 @@ class EitStatus(EitCommand): ALIASES = ["st"] ALLOW_UNPRIVILEGED = True - def parse(self): + def _get_parser(self): + """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitStatus.NAME) parser = argparse.ArgumentParser( @@ -44,6 +45,11 @@ class EitStatus(EitCommand): parser.add_argument("repo", nargs='?', default=None, metavar="", help=_("repository")) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/test.py b/server/eit/commands/test.py index e133690e2..1791527a2 100644 --- a/server/eit/commands/test.py +++ b/server/eit/commands/test.py @@ -10,11 +10,10 @@ """ import sys -import os import argparse from entropy.i18n import _ -from entropy.output import darkgreen, teal, purple +from entropy.output import teal, purple from entropy.server.interfaces import Server from eit.commands.descriptor import EitCommandDescriptor @@ -34,7 +33,7 @@ class EitTest(EitCommand): self._nsargs = None self._ask = False - def parse(self): + def _get_parser(self): """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitTest.NAME) @@ -89,6 +88,11 @@ class EitTest(EitCommand): help=_("no stupid questions")) rempkgs_parser.set_defaults(func=self._rem_pkgtest) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: diff --git a/server/eit/commands/vacuum.py b/server/eit/commands/vacuum.py index 9b7448284..2b453c2cc 100644 --- a/server/eit/commands/vacuum.py +++ b/server/eit/commands/vacuum.py @@ -35,7 +35,8 @@ class EitVacuum(EitCommand): self._pretend = False self._days = 0 - def parse(self): + def _get_parser(self): + """ Overridden from EitCommand """ descriptor = EitCommandDescriptor.obtain_descriptor( EitVacuum.NAME) parser = argparse.ArgumentParser( @@ -51,6 +52,11 @@ class EitVacuum(EitCommand): parser.add_argument('--days', type=int, default=self._days, help=_("expired since how many days, default: 0")) + return parser + + def parse(self): + """ Overridden from EitCommand """ + parser = self._get_parser() try: nsargs = parser.parse_args(self._args) except IOError as err: