origin-manager: support ReviewBot override comment using origin workaround.
This commit is contained in:
parent
e930ea37c3
commit
a8319e6664
@ -15,8 +15,6 @@ class OriginManager(ReviewBot.ReviewBot):
|
|||||||
|
|
||||||
# ReviewBot options.
|
# ReviewBot options.
|
||||||
self.request_default_return = True
|
self.request_default_return = True
|
||||||
# No such thing as override, only changing origin which must be approved
|
|
||||||
# by fallback group. Annotation must be included in review.
|
|
||||||
self.override_allow = False
|
self.override_allow = False
|
||||||
|
|
||||||
def check_source_submission(self, src_project, src_package, src_rev, tgt_project, tgt_package):
|
def check_source_submission(self, src_project, src_package, src_rev, tgt_project, tgt_package):
|
||||||
@ -55,7 +53,15 @@ class OriginManager(ReviewBot.ReviewBot):
|
|||||||
|
|
||||||
self.policy_result_comment_add(project, package, result.comments)
|
self.policy_result_comment_add(project, package, result.comments)
|
||||||
|
|
||||||
if not result.wait:
|
if result.wait:
|
||||||
|
# Allow overriding a policy wait by accepting as workaround with the
|
||||||
|
# hope that pending request will be accepted.
|
||||||
|
override = self.request_override_check(self.request, True)
|
||||||
|
if override:
|
||||||
|
self.review_messages['accepted'] = origin_annotation_dump(
|
||||||
|
origin_info_new, origin_info_old, self.review_messages['accepted'])
|
||||||
|
return override
|
||||||
|
else:
|
||||||
if result.accept:
|
if result.accept:
|
||||||
self.review_messages['accepted'] = origin_annotation_dump(origin_info_new, origin_info_old)
|
self.review_messages['accepted'] = origin_annotation_dump(origin_info_new, origin_info_old)
|
||||||
return result.accept
|
return result.accept
|
||||||
|
@ -291,11 +291,15 @@ def origin_find_fallback(apiurl, target_project, package, source_hash, user):
|
|||||||
|
|
||||||
return None
|
return None
|
||||||
|
|
||||||
def origin_annotation_dump(origin_info_new, origin_info_old):
|
def origin_annotation_dump(origin_info_new, origin_info_old, override=False):
|
||||||
data = {'origin': str(origin_info_new.project)}
|
data = {'origin': str(origin_info_new.project)}
|
||||||
if origin_info_old and origin_info_new.project != origin_info_old.project:
|
if origin_info_old and origin_info_new.project != origin_info_old.project:
|
||||||
data['origin_old'] = str(origin_info_old.project)
|
data['origin_old'] = str(origin_info_old.project)
|
||||||
|
|
||||||
|
if override:
|
||||||
|
data['origin'] = origin_workaround_ensure(data['origin'])
|
||||||
|
data['comment'] = override
|
||||||
|
|
||||||
return yaml.dump(data, default_flow_style=False)
|
return yaml.dump(data, default_flow_style=False)
|
||||||
|
|
||||||
def origin_annotation_load(annotation):
|
def origin_annotation_load(annotation):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user