# HG changeset patch # User Goffi # Date 1522425237 -7200 # Node ID 2df1ca79cb308d0b3b907ccbfb13fb08a97e11e6 # Parent a648872899315100bb8fa74079aadb3d83b09409 jp (merge-request/import): added import command diff -r a64887289931 -r 2df1ca79cb30 frontends/src/jp/cmd_merge_request.py --- 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'))