1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2025-02-20 20:09:11 +00:00

Framework/Workload: Utilize package_names during package resolution

Iterate through available package names when resolving an apk file from
the host.
This commit is contained in:
Marc Bonnici 2017-11-23 17:17:47 +00:00 committed by setrofim
parent ff529462e0
commit e9ae08e00b

View File

@ -562,13 +562,29 @@ class PackageHandler(object):
msg = 'Cannot Resolve package; No package name(s) specified'
raise WorkloadError(msg)
self.apk_file = context.resolver.get(ApkFile(self.owner,
variant=self.variant,
version=self.version,
package=self.package_name,
exact_abi=self.exact_abi,
supported_abi=self.supported_abi),
strict=self.strict)
if self.package_name:
self.apk_file = context.resolver.get(ApkFile(self.owner,
variant=self.variant,
version=self.version,
package=self.package_name,
exact_abi=self.exact_abi,
supported_abi=self.supported_abi),
strict=self.strict)
else:
available_packages = []
for package in self.owner.package_names:
available_packages.append(context.resolver.get(ApkFile(self.owner,
variant=self.variant,
version=self.version,
package=package,
exact_abi=self.exact_abi,
supported_abi=self.supported_abi),
strict=self.strict))
if len(available_packages) == 1:
self.apk_file = available_packages[0]
elif len(available_packages) > 1:
msg = 'Multiple matching packages found for "{}" on host: {}'
raise WorkloadError(msg.format(self.owner, available_packages))
if self.apk_file:
self.apk_info = ApkInfo(self.apk_file)
if self.version: