
On Wed, Oct 25, 2017 at 3:21 PM, Nir Soffer <nsoffer@redhat.com> wrote:
On Wed, Oct 25, 2017 at 9:33 AM Sandro Bonazzola <sbonazzo@redhat.com> wrote:
2017-10-20 20:05 GMT+02:00 Yaniv Kaul <ykaul@redhat.com>:
On Fri, Oct 20, 2017 at 7:56 PM, Nir Soffer <nsoffer@redhat.com> wrote:
On Fri, Oct 20, 2017 at 11:37 AM Sandro Bonazzola <sbonazzo@redhat.com> wrote:
Just an heads up we have improvement margin on vdsm spec file quality.
[sbonazzo@sbonazzo SPECS]$ rpmlint ./vdsm.spec /var/lib/mock/epel-7-x86_64/result/*rpm vdsm.x86_64: E: explicit-lib-dependency libnl3
What is wrong with this?
vdsm.x86_64: E: explicit-lib-dependency libvirt-client vdsm.x86_64: E: explicit-lib-dependency libvirt-daemon-config-nwfilter vdsm.x86_64: E: explicit-lib-dependency libvirt-lock-sanlock vdsm.x86_64: W: obsolete-not-provided vdsm-infra vdsm.x86_64: E: no-binary
Ha?
The package should be of the noarch architecture because it doesn't contain any binaries.
Vdsm has many arch specific requirements, and we have different requirements on different platforms. Having a arch specific meta package was the solution suggested by Fedora reviewers about 2 years ago.
vdsm.x86_64: W: conffile-without-noreplace-flag /var/log/vdsm/mom.log
This is not a conf file, we should probably change this
vdsm.x86_64: W: conffile-without-noreplace-flag /var/log/vdsm/supervdsm.log vdsm.x86_64: W: conffile-without-noreplace-flag /var/log/vdsm/vdsm.log vdsm.x86_64: W: non-conffile-in-etc /etc/NetworkManager/conf.d/ vdsm.conf
Ha?
Perhaps: %{_sysconfdir}/NetworkManager/conf.d/vdsm.conf
should be: %config(noreplace) %{_sysconfdir}/NetworkManager/conf.d/vdsm.conf
vdsm.x86_64: W: non-conffile-in-etc /etc/modprobe.d/vdsm-bonding- modprobe.conf vdsm.x86_64: E: non-readable /etc/pki/vdsm/keys/libvirt_password 600 vdsm.x86_64: W: non-conffile-in-etc /etc/security/limits.d/99- vdsm.conf
Ha?
Same?
vdsm.x86_64: W: non-conffile-in-etc /etc/sudoers.d/50_vdsm vdsm.x86_64: W: systemd-unit-in-etc /etc/systemd/system/libvirtd. service.d/unlimited-core.conf vdsm.x86_64: W: non-conffile-in-etc /etc/systemd/system/libvirtd. service.d/unlimited-core.conf vdsm.x86_64: E: zero-length /etc/vdsm/mom.d/01-parameters.policy vdsm.x86_64: E: wrong-script-interpreter /usr/libexec/vdsm/kvm2ovirt /usr/bin/env python
This used to be the recommended way to write scripts, but it is easy to replace with /usr/bin/python2.
It should be /usr/bin/python since python is under "alternatives" management
But most of the code is python2 only - we recently update (most) scripts to use /usr/bin/python2.
vdsm.x86_64: E: wrong-script-interpreter /usr/libexec/vdsm/vm_migrate_hook.py /usr/bin/env python vdsm.x86_64: E: wrong-script-interpreter /usr/share/vdsm/virt/vm_migrate_hook.py /usr/bin/env python vdsm.x86_64: E: non-executable-script /usr/share/vdsm/virt/vm_migrate_hook.py 644 /usr/bin/env python vdsm.x86_64: E: non-standard-dir-perm /var/lib/libvirt/qemu/channels 775 vdsm.x86_64: E: non-standard-dir-perm /var/log/core 1777 vdsm.x86_64: E: dir-or-file-in-var-run /var/run/vdsm
What is wrong with this?
"/var/run may be a temporary filesystem, so any directories or files needed there must be created dynamically at boot time."
We create these directories in runtime, not sure why we create them also during instillation.
As of my I0bdc3b1f2be960d536856465979c89ac85bce4a5 (introduced to silence rpmlint), we no longer do. I do not recall why do we still have this horrible /var/log/core 1777; I hoped that with proper integration to ABRT, we can delegate the responsiblity of collecting core dumps. Irit, do you recall?