Solve Dependencies does not work

Problem:
When I create a CV with dependencies solved turned on and filter out a known dependency, the dependency is still missing from the CV.

Expected result:
All dependencies are available for the host

**Versions"
Katello 4.3.1, foreman-3.1.3

This is how I tested the solve dependencies function

Check what dependencies are installed with a package, in my case I used vim.

It had about 5 dependencies, I uploaded all of them to an empty repository using the “upload package” function in the user interface.

From this I then created a CV which I equipped with the exclude filter vim-* and turned on solve dependencies.
Now the filter shows me that I have filtered out everything except vim itself.

Now I would expect when I build a new cv version that as described the solve dependencies feature adds back those packages I filtered out with vim-*.
But this does not happen.

Hi @Richie,

I was able to reproduce this by copying the following RPMs into a repo:

gpm-libs-1.20.7-17.el8.x86_64
vim-common-2:8.0.1763-19.el8_6.4.x86_64
vim-enhanced-2:8.0.1763-19.el8_6.4.x86_64
vim-filesystem-2:8.0.1763-19.el8_6.4.noarch
vim-minimal-2:8.0.1763-19.el8_6.4.x86_64
vim-X11-2:8.0.1763-19.el8_6.4.x86_64

I created a content view with a filter that includes only vim-enhanced and turned on dependency solving. The result was a CVV with only vim-enhanced, similarly to what you mentioned.

It appears to be a bug with uploaded RPMs because I wasn’t able to reproduce the same issue by filtering in vim-enhanced from the entire AlmaLinux AppStream + BaseOS repos. In that case, dep solving worked.

I filed a bug with Pulp: Copying uploaded RPMs with dependency solving doesn't copy dependencies · Issue #2824 · pulp/pulp_rpm · GitHub

2 Likes