Mercurial > libervia-backend
diff frontends/src/jp/cmd_merge_request.py @ 2545:2df1ca79cb30
jp (merge-request/import): added import command
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 30 Mar 2018 17:53:57 +0200 |
parents | 100563768196 |
children | b27165bf160c |
line wrap: on
line diff
--- a/frontends/src/jp/cmd_merge_request.py Fri Mar 30 17:53:11 2018 +0200 +++ b/frontends/src/jp/cmd_merge_request.py Fri Mar 30 17:53:57 2018 +0200 @@ -99,8 +99,37 @@ exit_code=C.EXIT_BRIDGE_ERRBACK)) + +class Import(base.CommandBase): + + def __init__(self, host): + base.CommandBase.__init__(self, host, 'import', use_pubsub=True, pubsub_flags={C.SINGLE_ITEM}, help=_(u'import a merge request')) + self.need_loop=True + + def add_parser_options(self): + self.parser.add_argument("-r", "--repository", metavar="PATH", type=base.unicode_decoder, default=u'.', help=_(u"path of the repository (DEFAULT: current directory)")) + + def mergeRequestImportCb(self): + self.host.quit(C.EXIT_OK) + + def start(self): + repository = os.path.expanduser(os.path.abspath(self.args.repository)) + extra = {} + self.host.bridge.mergeRequestsImport( + repository, + self.args.item, + self.args.service, + self.args.node, + extra, + self.profile, + callback=self.mergeRequestImportCb, + errback=partial(self.errback, + msg=_(u"can't import merge request: {}"), + exit_code=C.EXIT_BRIDGE_ERRBACK)) + + class MergeRequest(base.CommandBase): - subcommands = (Set, Get) + subcommands = (Set, Get, Import) def __init__(self, host): super(MergeRequest, self).__init__(host, 'merge-request', use_profile=False, help=_('merge-request management'))