Project

Profile

Help

Issue #7625

closed

RPM Migration results in incomplete package metadata

Added by adam.winberg@smhi.se over 3 years ago. Updated over 3 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
High
Assignee:
Sprint/Milestone:
Start date:
Due date:
Estimated time:
Severity:
3. High
Platform Release:
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Sprint 84
Quarter:

Description

edit:

Migration does not properly populate the filelist metadata on the resulting RPMs, which impacts subsequent usage of the RPM copy APIs, which read this metadata as part of the process to determine dependency relationships.

original:

I am running pulp on RHEL 8 with a rpm-based installation based on packages from the Katello nightly repo.

I have succeeded in migrating my pulp2 content to pulp3 and all repos look complete (i've reran the migration and no new repoversions are generated). 

In an attempt to test the multirepo copy functionality described at 

https://pulp-rpm.readthedocs.io/en/latest/workflows/copy.html#recipes 

, I created a couple of new, empty repos and tried to copy errata from my migrated RHEL8-appstream repo to them: 

POST /pulp/api/v3/rpm/copy/
config:=[
    {"source_repo_version": "<rhel8-appstream-version-href>", "dest_repo": "my-new-repo1", "content": [$ADVISORY_HREF1]},
    {"source_repo_version": "<rhel8-baseos-version-href>", "dest_repo": "my-new-repo2", "content": []},
]
dependency_solving=False

This works (after applying the patch from (https://github.com/pulp/pulp_rpm/commit/712abdf1abb95c969b54fd2968a573189b77bcba), or at least it executes without any errors.

I'm a bit confused though by the result. I copied 16 advisories from the appstreams repo to my new empty repo and the copy ended up with copying all modulemds and almost all packages (11466 of 12053). That doesnt seem right to me. And my other new repo ('my-new-repo2') is still empty, meaning that of those 11000 packages there were none that had any dependencies from the baseos repo which also strikes me as odd. If i set 'dependency_solving=True' (contrary to the documentation) I end up with the same amount of packages in my 'my-new-repo1' and 2 packages in 'my-new-repo2'. 

Am I misunderstanding something about this functionality?


Related issues

Related to RPM Support - Issue #7705: Advanced-copy overview can be misleadingCLOSED - CURRENTRELEASEggaineyActions

Also available in: Atom PDF