Remove old history handling

This commit is contained in:
Stephan Kulow
2022-11-01 11:34:10 +01:00
parent 9ed8abad2b
commit e6a401d8ac
5 changed files with 7 additions and 371 deletions

View File

@@ -1,14 +1,12 @@
import datetime
import logging
import re
import xml.etree.ElementTree as ET
from urllib.error import HTTPError
class OBSRevision:
def __init__(self, obs, history, project, package):
def __init__(self, obs, project, package):
self.obs = obs
self.history = history
self.project = project
self.package = package
@@ -72,46 +70,3 @@ class OBSRevision:
logging.debug("No _link for the revision")
return None
raise e
def check_link(self):
"""Add 'linkrev' attribute into the revision. Returns False if the link is invalid"""
try:
root = self.read_link()
if root is None:
return True
target_project = root.get("project")
except ET.ParseError:
logging.error(
f"_link can't be parsed [{self.project}/{self.package} rev={self.unexpanded_srcmd5}]"
)
return False
rev = self.history.find_last_rev_after_time(target_project, self.time)
if rev:
logging.debug(f"Linkrev found: {rev}")
self.linkrev = rev.srcmd5
return True
def check_expanded(self):
# Even if it's not a link we still need to check the expanded
# srcmd5 as it's possible used in submit requests
if not self.check_link():
return False
# If there is a "linkrev", "rev" is ignored
params = {"rev": self.srcmd5, "expand": "1"}
if self.linkrev:
params["linkrev"] = self.linkrev
try:
root = self.obs._xml(f"source/{self.project}/{self.package}", **params)
except HTTPError as e:
if e.code == 400:
logging.error(
f"Package [{self.project}/{self.package} {params}] can't be expanded: {e}"
)
return False
raise e
self.srcmd5 = root.get("srcmd5")
return True