Fix installcheck for arm architectures

armv6l/armv7l are the exception of the rule where the rpm architecture
specifying an abi marker that is not visible in the kernel uname
architecture (because the kernel can do either). The build service
decided to use the kernel architecture rather than the rpm architecture,
so we need to map armv6l (kernel arch) to armv6hl (hard float, rpm arch)
This commit is contained in:
Dirk Mueller 2019-12-10 08:36:19 +01:00
parent 05e7447a3f
commit 52b46a8f47
2 changed files with 9 additions and 2 deletions

View File

@ -93,7 +93,14 @@ def parsed_installcheck(pfile, arch, target_packages, whitelist):
if not len(target_packages):
return reported_problems
p = subprocess.run(['/usr/bin/installcheck', arch, pfile],
def maparch2installarch(arch):
_mapping = {'armv6l': 'armv6hl',
'armv7l': 'armv7hl'}
if arch in _mapping:
return _mapping[arch]
return arch
p = subprocess.run(['/usr/bin/installcheck', maparch2installarch(arch), pfile],
stdout=subprocess.PIPE, errors='backslashreplace', text=True)
if p.returncode:
in_problem = False

View File

@ -24,7 +24,7 @@ from osclib.core import (http_GET, http_POST, makeurl,
project_pseudometa_file_ensure,
repository_path_expand, repository_path_search,
target_archs, source_file_load, source_file_ensure)
from osclib.repochecks import installcheck, mirror, parsed_installcheck, CorruptRepos
from osclib.repochecks import mirror, parsed_installcheck, CorruptRepos
class RepoChecker():
def __init__(self):