comparison frontends/src/jp/cmd_merge_request.py @ 2554:0062d3e79d12

plugin uri finder, jp (merge-request): labels handling: - a label can now be specified as metadata after specifing a "xmpp:" URI in doc (with « use "[label]" label" » after the URI) - updated jp to handle new signature of URIFind - jp (merge-request/set): labels can now be specified using --label
author Goffi <goffi@goffi.org>
date Sun, 01 Apr 2018 20:17:00 +0200
parents 39b10475f56b
children 501b0f827f63
comparison
equal deleted inserted replaced
2553:39b10475f56b 2554:0062d3e79d12
39 39
40 def add_parser_options(self): 40 def add_parser_options(self):
41 self.parser.add_argument("-i", "--item", type=base.unicode_decoder, default=u'', help=_(u"id or URL of the request to update, or nothing for a new one")) 41 self.parser.add_argument("-i", "--item", type=base.unicode_decoder, default=u'', help=_(u"id or URL of the request to update, or nothing for a new one"))
42 self.parser.add_argument("-r", "--repository", metavar="PATH", type=base.unicode_decoder, default=u'.', help=_(u"path of the repository (DEFAULT: current directory)")) 42 self.parser.add_argument("-r", "--repository", metavar="PATH", type=base.unicode_decoder, default=u'.', help=_(u"path of the repository (DEFAULT: current directory)"))
43 self.parser.add_argument("-f", "--force", action="store_true", help=_(u"publish merge request without confirmation")) 43 self.parser.add_argument("-f", "--force", action="store_true", help=_(u"publish merge request without confirmation"))
44 self.parser.add_argument("-l", "--label", dest="labels", type=base.unicode_decoder, action='append', help=_(u"labels to categorize your request"))
44 45
45 def mergeRequestSetCb(self, published_id): 46 def mergeRequestSetCb(self, published_id):
46 if published_id: 47 if published_id:
47 self.disp(u"Merge request published at {pub_id}".format(pub_id=published_id)) 48 self.disp(u"Merge request published at {pub_id}".format(pub_id=published_id))
48 else: 49 else:
49 self.disp(u"Merge request published") 50 self.disp(u"Merge request published")
50 self.host.quit(C.EXIT_OK) 51 self.host.quit(C.EXIT_OK)
51 52
52 def sendRequest(self): 53 def sendRequest(self):
53 extra = {'update': 'true'} if self.args.item else {} 54 extra = {'update': 'true'} if self.args.item else {}
55 values = {}
56 if self.args.labels is not None:
57 values[u'labels'] = self.args.labels
54 self.host.bridge.mergeRequestSet( 58 self.host.bridge.mergeRequestSet(
55 self.args.service, 59 self.args.service,
56 self.args.node, 60 self.args.node,
57 self.repository, 61 self.repository,
58 u'auto', 62 u'auto',
59 {}, 63 values,
60 u'', 64 u'',
61 self.args.item, 65 self.args.item,
62 extra, 66 extra,
63 self.profile, 67 self.profile,
64 callback=self.mergeRequestSetCb, 68 callback=self.mergeRequestSetCb,