Mercurial > libervia-backend
comparison frontends/src/jp/cmd_merge_request.py @ 2542:100563768196
jp (merge/get): "get" command first draft:
get allows to retrieve a merge request, to display it. By default it only display "id", "title" and "body" ; verbosity must be augmented to display more.
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 29 Mar 2018 09:09:33 +0200 |
parents | 772447ec070f |
children | 2df1ca79cb30 |
comparison
equal
deleted
inserted
replaced
2541:65695b9343d3 | 2542:100563768196 |
---|---|
19 | 19 |
20 | 20 |
21 import base | 21 import base |
22 from sat.core.i18n import _ | 22 from sat.core.i18n import _ |
23 from sat_frontends.jp.constants import Const as C | 23 from sat_frontends.jp.constants import Const as C |
24 from sat_frontends.jp import xmlui_manager | |
24 from functools import partial | 25 from functools import partial |
25 import os.path | 26 import os.path |
26 | 27 |
27 __commands__ = ["MergeRequest"] | 28 __commands__ = ["MergeRequest"] |
28 | 29 |
61 errback=partial(self.errback, | 62 errback=partial(self.errback, |
62 msg=_(u"can't create merge request: {}"), | 63 msg=_(u"can't create merge request: {}"), |
63 exit_code=C.EXIT_BRIDGE_ERRBACK)) | 64 exit_code=C.EXIT_BRIDGE_ERRBACK)) |
64 | 65 |
65 | 66 |
67 class Get(base.CommandBase): | |
68 | |
69 def __init__(self, host): | |
70 base.CommandBase.__init__(self, host, 'get', use_pubsub=True, pubsub_flags={C.MULTI_ITEMS}, use_verbose=True, help=_(u'get a merge request')) | |
71 self.need_loop=True | |
72 | |
73 def add_parser_options(self): | |
74 pass | |
75 | |
76 def mergeRequestGetCb(self, requests_data): | |
77 if self.verbosity >= 1: | |
78 whitelist = None | |
79 else: | |
80 whitelist = {'id', 'title', 'body'} | |
81 for request_xmlui in requests_data[0]: | |
82 xmlui = xmlui_manager.create(self.host, request_xmlui, whitelist=whitelist) | |
83 xmlui.show(values_only=True) | |
84 self.host.quit(C.EXIT_OK) | |
85 | |
86 def start(self): | |
87 extra = {} | |
88 self.host.bridge.mergeRequestsGet( | |
89 self.args.service, | |
90 self.args.node, | |
91 self.args.max, | |
92 self.args.items, | |
93 u'', | |
94 extra, | |
95 self.profile, | |
96 callback=self.mergeRequestGetCb, | |
97 errback=partial(self.errback, | |
98 msg=_(u"can't get merge request: {}"), | |
99 exit_code=C.EXIT_BRIDGE_ERRBACK)) | |
100 | |
101 | |
66 class MergeRequest(base.CommandBase): | 102 class MergeRequest(base.CommandBase): |
67 subcommands = (Set,) | 103 subcommands = (Set, Get) |
68 | 104 |
69 def __init__(self, host): | 105 def __init__(self, host): |
70 super(MergeRequest, self).__init__(host, 'merge-request', use_profile=False, help=_('merge-request management')) | 106 super(MergeRequest, self).__init__(host, 'merge-request', use_profile=False, help=_('merge-request management')) |