pkgset: Remove check for unique name

We now have a way to select even older version of package (since the
newer one can be left out of the whitelist), so we can include multiple
versions of the same package into global package set.

Signed-off-by: Lubomír Sedlář <lsedlar@redhat.com>
This commit is contained in:
Lubomír Sedlář 2018-03-07 13:58:53 +01:00
parent a03a46a078
commit b393a4246b
2 changed files with 3 additions and 13 deletions

View File

@ -147,12 +147,9 @@ class PackageSetBase(kobo.log.LoggingBase):
return self.rpms_by_arch
def merge(self, other, primary_arch, arch_list, unique_name=False):
def merge(self, other, primary_arch, arch_list):
"""
Merge ``other`` package set into this instance.
With ``unique_name=True`` a package will be added only if there is not
a package with the same name already.
"""
msg = "Merging package sets for %s: %s" % (primary_arch, arch_list)
self.log_debug("[BEGIN] %s" % msg)
@ -176,15 +173,11 @@ class PackageSetBase(kobo.log.LoggingBase):
else:
exclusivearch_list = None
for arch in arch_list:
known_packages = set(pkg.name for pkg in self.rpms_by_arch.get(arch, []))
self.rpms_by_arch.setdefault(arch, [])
for i in other.rpms_by_arch.get(arch, []):
if i.file_path in self.file_cache:
# TODO: test if it really works
continue
if unique_name and i.name in known_packages:
self.log_debug('Not merging in %r' % i)
continue
if exclusivearch_list and arch == "noarch":
if is_excluded(i, exclusivearch_list, logger=self._logger):
continue

View File

@ -275,7 +275,6 @@ def populate_global_pkgset(compose, koji_wrapper, path_prefix, event_id):
variant_tags[variant].extend(force_list(compose.conf["pkgset_koji_tag"]))
# Add global tag(s) if supplied.
global_tags = []
if 'pkgset_koji_tag' in compose.conf:
if compose.conf["pkgset_koji_tag"] == "not-used":
# The magic value is used for modular composes to avoid errors
@ -284,8 +283,7 @@ def populate_global_pkgset(compose, koji_wrapper, path_prefix, event_id):
'option is no longer required. Remove it from '
'the configuration.')
else:
global_tags = force_list(compose.conf["pkgset_koji_tag"])
compose_tags.extend(global_tags)
compose_tags.extend(force_list(compose.conf["pkgset_koji_tag"]))
inherit = compose.conf["pkgset_koji_inherit"]
global_pkgset_path = os.path.join(
@ -329,8 +327,7 @@ def populate_global_pkgset(compose, koji_wrapper, path_prefix, event_id):
if len(compose_tags) == 1:
global_pkgset = pkgset
else:
global_pkgset.merge(pkgset, None, list(all_arches),
unique_name=compose_tag in global_tags)
global_pkgset.merge(pkgset, None, list(all_arches))
with open(global_pkgset_path, 'wb') as f:
data = pickle.dumps(global_pkgset)
f.write(data)