don't consider a normal supersede a move
This commit is contained in:
parent
7c18c7da08
commit
d64f9a3f6a
@ -93,13 +93,20 @@ class RequestFinder:
|
||||
for sr in root.findall('request'):
|
||||
# TODO: check the package matches - OBS is case insensitive
|
||||
request = int(sr.get('id'))
|
||||
self.srs[request] = {'project': 'openSUSE:Factory'}
|
||||
state = sr.find('state').get('name')
|
||||
|
||||
self.srs[request] = {'project': 'openSUSE:Factory', 'state': state }
|
||||
|
||||
review = self._new_review_by_project(request, sr)
|
||||
if review:
|
||||
self.srs[int(request)]['staging'] = review
|
||||
|
||||
if ret:
|
||||
if self.srs[ret]['state'] == 'declined':
|
||||
# ignore previous requests if they are declined
|
||||
# if they are the last one, it's fine to return them
|
||||
del self.srs[ret]
|
||||
else:
|
||||
msg = 'There are multiple requests for package "{}": {} and {}'
|
||||
msg = msg.format(package, ret, request)
|
||||
raise oscerr.WrongArgs(msg)
|
||||
|
@ -26,6 +26,8 @@ class SelectCommand(object):
|
||||
package = self._package(request)
|
||||
|
||||
for staging in self.api.get_staging_projects():
|
||||
if staging == self.tprj: # requests for the same project are fine
|
||||
continue
|
||||
for rq in self.api.get_prj_pseudometa(staging)['requests']:
|
||||
if rq['id'] != request and rq['package'] == package:
|
||||
return (rq['id'], package, staging)
|
||||
@ -50,13 +52,13 @@ class SelectCommand(object):
|
||||
return self.api.move_between_project(fprj, rq, self.tprj)
|
||||
elif 'staging' in rq_prj and not move:
|
||||
# Previously selected, but not explicit move
|
||||
msg = 'Request {} is actually in "{}".\n'
|
||||
msg = 'Request {} is already tracked in "{}".'
|
||||
msg = msg.format(rq, rq_prj['staging'])
|
||||
if rq_prj['staging'] != self.tprj:
|
||||
msg += 'Use --move modifier to move the request from "{}" to "{}"'
|
||||
msg += '\nUse --move modifier to move the request from "{}" to "{}"'
|
||||
msg = msg.format(rq_prj['staging'], self.tprj)
|
||||
print(msg)
|
||||
return False
|
||||
return True
|
||||
else:
|
||||
raise oscerr.WrongArgs('Arguments for select are not correct.')
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user