forked from importers/git-importer
Remove old history handling
This commit is contained in:
@@ -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
|
||||
|
Reference in New Issue
Block a user