Actions
Issue #4375
closedRecursive copy doesn't solve rich dependencies correctly
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Version:
Platform Release:
2.18.1
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Pulp 2
Sprint:
Sprint 48
Quarter:
Description
There are recursive and recursive_conservative flags which can be specified during copy.
When recursive_conservative flag is set to True, rich and weak dependencies are resolved properly.
When recursive flag is set to True, rich dependencies are NOT resolved properly, weak dependencies are resolved properly.
From the Cobbler
package from the fixtures repo:
<rpm:requires>
<rpm:entry name="(Scotch = 8-10 and contireau = 2-10 and tablespoon-sugar = 1-0)"/>
<rpm:entry name="icecubes"/>
</rpm:requires>
<rpm:recommends>
<rpm:entry name="(orange-bits if fruity)"/>
</rpm:recommends>
From the dependencies above it's clear that due to and
operator all the packages are required, but only Scotch
is copied and not contireau
and tablespoon-sugar
.
pulp-admin rpm repo create --repo-id foo --feed https://repos.fedorapeople.org/pulp/pulp/fixtures/rpm-richnweak-deps/
pulp-admin rpm repo sync run --repo-id foo
pulp-admin rpm repo create --repo-id bar
pulp-admin rpm repo copy rpm --from-repo-id foo --to-repo-id bar --str-eq name=Cobbler --recursive
This command may be exited via ctrl+c without affecting the request.
[\]
Running...
Copied:
Cobbler-1-0-noarch
Scotch-8-10-noarch
icecubes-2-3-noarch
orange-bits-2-3-noarch
Related issues
Actions
Fix: Recursive copy doesn't solve rich dependencies
closes: #4375 https://pulp.plan.io/issues/4375