Actions
Issue #3929
closedStory #3847: Introduce weak dependency solving
Pulp content search does not show Recommends field
Start date:
Due date:
Estimated time:
Severity:
2. Medium
Version:
Platform Release:
2.17.1
OS:
Triaged:
Yes
Groomed:
No
Sprint Candidate:
No
Tags:
Easy Fix, Pulp 2
Sprint:
Sprint 42
Quarter:
Description
After a sync was done. A search for a certain RPM package that has the `Recommends` field present is not displayed on pulp content search.
pulp-admin rpm repo create --repo-id foo --feed https://mirrors.nic.cz/fedora/linux/releases/27/Server/x86_64/os/
pulp-admin rpm repo sync run --repo-id foo
[root@f28 ~]# pulp-admin rpm repo content rpm --repo-id=foo --match 'name=chrony'
Arch: x86_64
Buildhost: buildvm-19.phx2.fedoraproject.org
Checksum: 193fda437f4a1b0d9b84c32b6645c52165dab09eff7024ad23f8e321919390da
Checksumtype: sha256
Description: A client/server for the Network Time Protocol, this program keeps
your computer's clock accurate. It was specially designed to
support systems with intermittent internet connections, but it
also works well in permanently connected environments. It can use
also hardware reference clocks, system real-time clock or manual
input as time references.
Epoch: 0
Filename: chrony-3.2-1.fc27.x86_64.rpm
License: GPLv2
Name: chrony
Provides: chrony = 3.2-1.fc27-0, chrony(x86-64) = 3.2-1.fc27-0,
config(chrony) = 3.2-1.fc27-0
Release: 1.fc27
Requires: /bin/bash, /bin/sh, /bin/sh, libcap.so.2()(64bit),
libedit.so.0()(64bit), libfreebl3.so()(64bit),
libfreebl3.so(NSSRAWHASH_3.12.3)(64bit), libm.so.6()(64bit),
libm.so.6(GLIBC_2.2.5)(64bit), libpthread.so.0()(64bit),
libpthread.so.0(GLIBC_2.2.5)(64bit), libseccomp.so.2()(64bit),
rtld(GNU_HASH), shadow-utils, systemd, systemd,
libc.so.6(GLIBC_2.25)(64bit)
Vendor: Fedora Project
Version: 3.2
[root@f28 ~]# mongo pulp_database --eval 'db.units_rpm.find({"name": "chrony"})[0].recommends'
MongoDB shell version v3.6.3
connecting to: mongodb://127.0.0.1:27017/pulp_database
MongoDB server version: 3.6.3
[
{
"release" : null,
"epoch" : null,
"version" : null,
"flags" : null,
"name" : "timedatex"
}
]
From repodata/...primary.xml
<rpm:recommends><rpm:entry name="timedatex"/></rpm:recommends>
[root@f28 ~]# rpm -qa | grep pulp | sort
pulp-admin-client-2.17.0-0.1.beta.fc28.noarch
pulp-deb-admin-extensions-1.7.1-1.fc28.noarch
pulp-deb-plugins-1.7.1-1.fc28.noarch
pulp-docker-admin-extensions-3.2.0-0.1.beta.fc28.noarch
pulp-docker-plugins-3.2.0-0.1.beta.fc28.noarch
pulp-ostree-admin-extensions-1.3.0-2.fc28.noarch
pulp-ostree-plugins-1.3.0-2.fc28.noarch
pulp-puppet-admin-extensions-2.17.0-0.1.beta.fc28.noarch
pulp-puppet-plugins-2.17.0-0.1.beta.fc28.noarch
pulp-puppet-tools-2.17.0-0.1.beta.fc28.noarch
pulp-python-admin-extensions-2.0.3-1.fc28.noarch
pulp-python-plugins-2.0.3-1.fc28.noarch
pulp-rpm-admin-extensions-2.17.0-0.1.beta.fc28.noarch
pulp-rpm-plugins-2.17.0-0.1.beta.fc28.noarch
pulp-selinux-2.17.0-0.1.beta.fc28.noarch
pulp-server-2.17.0-0.1.beta.fc28.noarch
python2-pulp-ostree-common-1.3.0-2.fc28.noarch
python-pulp-bindings-2.17.0-0.1.beta.fc28.noarch
python-pulp-client-lib-2.17.0-0.1.beta.fc28.noarch
python-pulp-common-2.17.0-0.1.beta.fc28.noarch
python-pulp-deb-common-1.7.1-1.fc28.noarch
python-pulp-docker-common-3.2.0-0.1.beta.fc28.noarch
python-pulp-oid_validation-2.17.0-0.1.beta.fc28.noarch
python-pulp-puppet-common-2.17.0-0.1.beta.fc28.noarch
python-pulp-python-common-2.0.3-1.fc28.noarch
python-pulp-repoauth-2.17.0-0.1.beta.fc28.noarch
python-pulp-rpm-common-2.17.0-0.1.beta.fc28.noarch
python-pulp-streamer-2.17.0-0.1.beta.fc28.noarch
[root@f28 ~]# cat /etc/redhat-release
Fedora release 28 (Twenty Eight)
Actions
Show the recommends field in pulp-admin
The RPM data model already tracks the recommends field but the Pulp CLI isn't displaying it. This patch enables the field display by enumerating it and formatting it the same way as the provides and requires fields are formatted.
Fixes: #3929 https://pulp.plan.io/issues/3929