Merge pull request #2671 from coolo/fix_legal
legal-auto: Move the "ignore channels" feature in the proper function
This commit is contained in:
commit
45e3d064af
@ -96,9 +96,18 @@ class LegalAuto(ReviewBot.ReviewBot):
|
|||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
def default_good(self, _, package):
|
||||||
|
if package == 'patchinfo' or package.startswith('patchinfo.'):
|
||||||
|
return True
|
||||||
|
if package.endswith('.SUSE_Channels'):
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
def check_source_submission(self, src_project, src_package, src_rev, target_project, target_package):
|
def check_source_submission(self, src_project, src_package, src_rev, target_project, target_package):
|
||||||
self.logger.info("%s/%s@%s -> %s/%s" % (src_project,
|
self.logger.info("%s/%s@%s -> %s/%s" % (src_project,
|
||||||
src_package, src_rev, target_project, target_package))
|
src_package, src_rev, target_project, target_package))
|
||||||
|
if self.default_good(src_project, src_package):
|
||||||
|
return True
|
||||||
to_review = self.open_reviews.get(self.request_nick(), None)
|
to_review = self.open_reviews.get(self.request_nick(), None)
|
||||||
if to_review:
|
if to_review:
|
||||||
self.logger.info("Found {}".format(json.dumps(to_review)))
|
self.logger.info("Found {}".format(json.dumps(to_review)))
|
||||||
@ -214,31 +223,24 @@ class LegalAuto(ReviewBot.ReviewBot):
|
|||||||
self.pkg_cache = {}
|
self.pkg_cache = {}
|
||||||
|
|
||||||
self.packages = []
|
self.packages = []
|
||||||
self._query_sources(project)
|
self._query_sources_for_product_import(project)
|
||||||
with open(yaml_path, 'w') as file:
|
with open(yaml_path, 'w') as file:
|
||||||
yaml.dump(self.pkg_cache, file)
|
yaml.dump(self.pkg_cache, file)
|
||||||
url = osc.core.makeurl(self.legaldb, ['products', project])
|
url = osc.core.makeurl(self.legaldb, ['products', project])
|
||||||
request = REQ.patch(url, headers=self.legaldb_headers, data={'id': self.packages}).json()
|
request = REQ.patch(url, headers=self.legaldb_headers, data={'id': self.packages}).json()
|
||||||
|
|
||||||
def _query_sources(self, project):
|
def _query_sources_for_product_import(self, project):
|
||||||
url = osc.core.makeurl(
|
url = osc.core.makeurl(
|
||||||
self.apiurl, ['source', project], {'view': 'info'})
|
self.apiurl, ['source', project], {'view': 'info'})
|
||||||
f = self.retried_GET(url)
|
f = self.retried_GET(url)
|
||||||
root = ET.parse(f).getroot()
|
root = ET.parse(f).getroot()
|
||||||
for si in root.findall('sourceinfo'):
|
for si in root.findall('sourceinfo'):
|
||||||
|
print(ET.tostring(si))
|
||||||
if si.findall('error'):
|
if si.findall('error'):
|
||||||
continue
|
continue
|
||||||
package = si.get('package')
|
package = si.get('package')
|
||||||
if ':' in package:
|
if ':' in package:
|
||||||
continue
|
continue
|
||||||
if package == 'patchinfo' or package.startswith('patchinfo.'):
|
|
||||||
continue
|
|
||||||
if package.endswith('.SUSE_Channels'):
|
|
||||||
continue
|
|
||||||
# skip packages that have _channel inside
|
|
||||||
if si.find('filename').text == '_channel':
|
|
||||||
self.logger.info("SKIP {}".format(si.find('filename').text))
|
|
||||||
continue
|
|
||||||
# handle maintenance links - we only want the latest
|
# handle maintenance links - we only want the latest
|
||||||
match = re.match(r'(\S+)\.\d+$', package)
|
match = re.match(r'(\S+)\.\d+$', package)
|
||||||
if match:
|
if match:
|
||||||
@ -249,10 +251,6 @@ class LegalAuto(ReviewBot.ReviewBot):
|
|||||||
continue
|
continue
|
||||||
skip = False
|
skip = False
|
||||||
for l in si.findall('linked'):
|
for l in si.findall('linked'):
|
||||||
if l.get('project') == 'SUSE:Channels':
|
|
||||||
self.logger.info("SKIP {}, it links to {}".format(package, l.get('project')))
|
|
||||||
skip = True
|
|
||||||
break
|
|
||||||
lpackage = l.get('package')
|
lpackage = l.get('package')
|
||||||
# strip sle11's .imported_ suffix
|
# strip sle11's .imported_ suffix
|
||||||
lpackage = re.sub(r'\.imported_\d+$', '', lpackage)
|
lpackage = re.sub(r'\.imported_\d+$', '', lpackage)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user