On Fri, Oct 20, 2017 at 11:37 AM Sandro Bonazzola <sbona...@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? > 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? > 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? > 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. > 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? > vdsm.x86_64: E: dir-or-file-in-var-run /var/run/vdsm/payload > vdsm.x86_64: E: dir-or-file-in-var-run /var/run/vdsm/sourceRoutes > vdsm.x86_64: E: dir-or-file-in-var-run /var/run/vdsm/trackedInterfaces > vdsm.x86_64: E: dir-or-file-in-var-run /var/run/vdsm/v2v > vdsm.x86_64: W: log-files-without-logrotate ['/var/log/core', > '/var/log/vdsm'] > We have logrotate configuration for vdsm, but we don't use the standard configuration since we need more frequent rotation. > vdsm.x86_64: W: dangerous-command-in-%pre rpm > vdsm.x86_64: W: dangerous-command-in-%post chmod > vdsm-api.noarch: E: wrong-script-interpreter > /usr/lib/python2.7/site-packages/vdsm/api/vdsmapi.py /usr/bin/env python > vdsm-api.noarch: E: non-executable-script > /usr/lib/python2.7/site-packages/vdsm/api/vdsmapi.py 644 /usr/bin/env python > vdsm-cli.noarch: W: non-conffile-in-etc /etc/bash_completion.d/vdsClient > vdsm-gluster.noarch: W: spelling-error %description -l en_US > functionalities -> functionalists, functionality, functionalist > vdsm-gluster.noarch: W: no-documentation > vdsm-hook-allocate_net.noarch: W: summary-not-capitalized C random_network > allocation hook for VDSM > vdsm-hook-allocate_net.noarch: W: spelling-error %description -l en_US vms > -> vs, ms, ems > vdsm-hook-allocate_net.noarch: W: no-documentation > vdsm-hook-allocate_net.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/before_device_create/10_allocate_net /usr/bin/env > python > vdsm-hook-checkimages.noarch: W: no-documentation > vdsm-hook-checkips.x86_64: W: no-documentation > vdsm-hook-checkips.x86_64: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/after_get_stats/10_checkips /usr/bin/env python > vdsm-hook-checkips.x86_64: E: non-executable-script > /usr/libexec/vdsm/hooks/after_get_stats/checkips_utils.py 644 > /usr/bin/python2 > vdsm-hook-diskunmap.noarch: W: spelling-error Summary(en_US) lun -> loon, > lung, sun > vdsm-hook-diskunmap.noarch: W: no-documentation > vdsm-hook-diskunmap.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/before_vm_start/50_diskunmap /usr/bin/env python2 > vdsm-hook-ethtool-options.noarch: W: spelling-error Summary(en_US) nics -> > incs, mics, nicks > vdsm-hook-ethtool-options.noarch: W: spelling-error %description -l en_US > nics -> incs, mics, nicks > vdsm-hook-ethtool-options.noarch: W: no-documentation > vdsm-hook-ethtool-options.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/after_network_setup/30_ethtool_options /usr/bin/env > python > vdsm-hook-extnet.noarch: W: spelling-error Summary(en_US) vNIC -> Venice > vdsm-hook-extnet.noarch: W: spelling-error Summary(en_US) libvirt -> > liberty, ovirt > vdsm-hook-extnet.noarch: W: spelling-error %description -l en_US vNIC -> > Venice > vdsm-hook-extnet.noarch: W: spelling-error %description -l en_US libvirt > -> liberty, ovirt > vdsm-hook-extnet.noarch: W: spelling-error %description -l en_US > openvswitch -> switchboard > vdsm-hook-extnet.noarch: W: no-documentation > vdsm-hook-extra-ipv4-addrs.x86_64: W: summary-ended-with-dot C Set extra > ipv4 addresses for vdsm networks. > vdsm-hook-extra-ipv4-addrs.x86_64: W: no-documentation > vdsm-hook-extra-ipv4-addrs.x86_64: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/after_network_setup/40_extra_ipv4_addrs > /usr/bin/env python > vdsm-hook-fakesriov.x86_64: W: spelling-error %description -l en_US > hostdevListByCaps > vdsm-hook-fakesriov.x86_64: W: spelling-error %description -l en_US sriov > -> Rios > vdsm-hook-fakesriov.x86_64: W: spelling-error %description -l en_US conf > -> con, cone, cons > vdsm-hook-fakesriov.x86_64: W: no-documentation > vdsm-hook-fakevmstats.noarch: W: spelling-error %description -l en_US > vmstats -> stats > vdsm-hook-fakevmstats.noarch: W: spelling-error %description -l en_US conf > -> con, cone, cons > vdsm-hook-fakevmstats.noarch: W: no-documentation > vdsm-hook-faqemu.noarch: W: spelling-error Summary(en_US) qemu -> emu, q > emu > vdsm-hook-faqemu.noarch: W: spelling-error %description -l en_US kvm -> km > vdsm-hook-faqemu.noarch: W: spelling-error %description -l en_US conf -> > con, cone, cons > vdsm-hook-faqemu.noarch: W: no-documentation > vdsm-hook-fcoe.noarch: W: no-documentation > vdsm-hook-fcoe.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/before_network_setup/50_fcoe /bin/env python > vdsm-hook-fileinject.noarch: W: no-documentation > vdsm-hook-floppy.noarch: W: no-documentation > vdsm-hook-hostusb.noarch: W: no-documentation > vdsm-hook-hostusb.noarch: E: non-readable > /etc/sudoers.d/50_vdsm_hook_hostusb 440 > vdsm-hook-hostusb.noarch: W: non-conffile-in-etc > /etc/sudoers.d/50_vdsm_hook_hostusb > vdsm-hook-httpsisoboot.noarch: W: spelling-error Summary(en_US) https -> > HTTP > vdsm-hook-httpsisoboot.noarch: W: spelling-error %description -l en_US > https -> HTTP > vdsm-hook-httpsisoboot.noarch: W: spelling-error %description -l en_US > http -> HTTP > vdsm-hook-httpsisoboot.noarch: W: no-documentation > vdsm-hook-hugepages.noarch: W: summary-ended-with-dot C Huge pages enable > user to handle VM with 2048KB page files. > vdsm-hook-hugepages.noarch: W: no-documentation > vdsm-hook-hugepages.noarch: E: non-readable > /etc/sudoers.d/50_vdsm_hook_hugepages 440 > vdsm-hook-hugepages.noarch: W: non-conffile-in-etc > /etc/sudoers.d/50_vdsm_hook_hugepages > vdsm-hook-ipv6.noarch: W: no-documentation > vdsm-hook-ipv6.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/before_network_setup/50_ipv6 /usr/bin/env python2 > vdsm-hook-isolatedprivatevlan.noarch: W: spelling-error %description -l > en_US ip -> pi, up, op > vdsm-hook-isolatedprivatevlan.noarch: W: spelling-error %description -l > en_US filterref -> filter ref, filter-ref, filterer > vdsm-hook-isolatedprivatevlan.noarch: W: spelling-error %description -l > en_US xml -> XML, ml, x ml > vdsm-hook-isolatedprivatevlan.noarch: W: no-documentation > vdsm-hook-isolatedprivatevlan.noarch: E: executable-marked-as-config-file > /etc/libvirt/nwfilter/isolatedprivatevlan-vdsm.xml > vdsm-hook-isolatedprivatevlan.noarch: E: script-without-shebang > /etc/libvirt/nwfilter/isolatedprivatevlan-vdsm.xml > vdsm-hook-localdisk.noarch: W: spelling-error %description -l en_US lvm -> > lvi, lam, Lvov > vdsm-hook-localdisk.noarch: W: only-non-binary-in-usr-lib > vdsm-hook-localdisk.noarch: W: no-documentation > vdsm-hook-localdisk.noarch: E: non-readable > /etc/sudoers.d/50_vdsm_hook_localdisk 440 > vdsm-hook-localdisk.noarch: W: non-conffile-in-etc > /etc/sudoers.d/50_vdsm_hook_localdisk > vdsm-hook-macbind.noarch: W: spelling-error Summary(en_US) vNIC -> Venice > vdsm-hook-macbind.noarch: W: spelling-error %description -l en_US vNIC -> > Venice > vdsm-hook-macbind.noarch: W: no-documentation > vdsm-hook-macbind.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/before_vm_start/50_macbind /usr/bin/env python2 > vdsm-hook-macspoof.noarch: W: spelling-error %description -l en_US vnics > -> conics > vdsm-hook-macspoof.noarch: W: no-documentation > vdsm-hook-nestedvt.noarch: W: spelling-error %description -l en_US > virtualization -> visualization, actualization, vitalization > vdsm-hook-nestedvt.noarch: W: spelling-error %description -l en_US kvm -> > km > vdsm-hook-nestedvt.noarch: W: no-documentation > vdsm-hook-nestedvt.noarch: W: non-conffile-in-etc > /etc/modprobe.d/vdsm-nestedvt.conf > vdsm-hook-noipspoof.noarch: W: no-documentation > vdsm-hook-numa.noarch: W: spelling-error %description -l en_US xml -> XML, > ml, x ml > vdsm-hook-numa.noarch: W: no-documentation > vdsm-hook-openstacknet.noarch: W: spelling-error Summary(en_US) vNICs -> > conics > vdsm-hook-openstacknet.noarch: W: spelling-error %description -l en_US > vNICs -> conics > vdsm-hook-openstacknet.noarch: W: no-documentation > vdsm-hook-openstacknet.noarch: E: non-readable > /etc/sudoers.d/50_vdsm_hook_openstacknet 440 > vdsm-hook-openstacknet.noarch: W: non-conffile-in-etc > /etc/sudoers.d/50_vdsm_hook_openstacknet > vdsm-hook-openstacknet.noarch: E: wrong-script-interpreter > /usr/libexec/vdsm/hooks/before_device_migrate_destination/50_openstacknet > /usr/bin/env python2 > vdsm-hook-pincpu.noarch: W: no-documentation > vdsm-hook-promisc.noarch: W: no-documentation > vdsm-hook-promisc.noarch: E: non-readable > /etc/sudoers.d/50_vdsm_hook_promisc 440 > vdsm-hook-promisc.noarch: W: non-conffile-in-etc > /etc/sudoers.d/50_vdsm_hook_promisc > vdsm-hook-qemucmdline.noarch: W: spelling-error Summary(en_US) cmdline -> > decline > vdsm-hook-qemucmdline.noarch: W: spelling-error %description -l en_US > cmdline -> decline > vdsm-hook-qemucmdline.noarch: W: spelling-error %description -l en_US > libvirt's -> liberty's > vdsm-hook-qemucmdline.noarch: W: spelling-error %description -l en_US qemu > -> emu, q emu > vdsm-hook-qemucmdline.noarch: W: spelling-error %description -l en_US > commandline -> command line, command-line, commandment > vdsm-hook-qemucmdline.noarch: W: spelling-error %description -l en_US xml > -> XML, ml, x ml > vdsm-hook-qemucmdline.noarch: W: spelling-error %description -l en_US > namespace -> name space, name-space, names pace > vdsm-hook-qemucmdline.noarch: W: no-documentation > vdsm-hook-qos.noarch: W: no-documentation > vdsm-hook-scratchpad.noarch: W: no-documentation > vdsm-hook-smbios.noarch: W: spelling-error Summary(en_US) libvirt -> > liberty, ovirt > vdsm-hook-smbios.noarch: W: spelling-error %description -l en_US libvirt > -> liberty, ovirt > vdsm-hook-smbios.noarch: W: no-documentation > vdsm-hook-spiceoptions.noarch: W: spelling-error Summary(en_US) vm -> cm, > v, m > vdsm-hook-spiceoptions.noarch: W: no-documentation > vdsm-hook-vfio-mdev.noarch: W: summary-ended-with-dot C Hook to enable > mdev-capable devices. > vdsm-hook-vfio-mdev.noarch: W: no-documentation > vdsm-hook-vhostmd.noarch: W: no-documentation > vdsm-hook-vhostmd.noarch: E: non-readable > /etc/sudoers.d/50_vdsm_hook_vhostmd 440 > vdsm-hook-vhostmd.noarch: W: non-conffile-in-etc > /etc/sudoers.d/50_vdsm_hook_vhostmd > vdsm-hook-vmdisk.noarch: W: no-documentation > vdsm-hook-vmfex.noarch: W: summary-not-capitalized C vmfex support for VDSM > vdsm-hook-vmfex.noarch: W: no-documentation > vdsm-hook-vmfex-dev.noarch: W: spelling-error Summary(en_US) vNIC -> Venice > vdsm-hook-vmfex-dev.noarch: W: spelling-error %description -l en_US vNIC > -> Venice > vdsm-hook-vmfex-dev.noarch: W: spelling-error %description -l en_US > macvtap -> madcap > vdsm-hook-vmfex-dev.noarch: W: no-documentation > vdsm-jsonrpc.noarch: W: spelling-error %description -l en_US libvdsm -> > liberalism > vdsm-jsonrpc.noarch: W: obsolete-not-provided vdsm-api > vdsm-jsonrpc.noarch: W: no-documentation > vdsm-python.noarch: E: non-executable-script > /usr/lib/python2.7/site-packages/vdsm/tool/dummybr.py 644 /usr/bin/python2 > vdsm-python.noarch: E: non-executable-script > /usr/lib/python2.7/site-packages/vdsm/tool/nwfilter.py 644 /usr/bin/python2 > vdsm-python.noarch: W: dangerous-command-in-%post rm > vdsm-tests.noarch: E: non-executable-script > /usr/share/vdsm/tests/alignmentScanTests.py 644 /usr/bin/python2 > This looks easy, this is not a script > vdsm-tests.noarch: E: wrong-script-interpreter > /usr/share/vdsm/tests/fake-ssh-add /usr/bin/env python > vdsm-tests.noarch: E: non-executable-script > /usr/share/vdsm/tests/fake-ssh-add 644 /usr/bin/env python > vdsm-tests.noarch: E: wrong-script-interpreter > /usr/share/vdsm/tests/fake-ssh-agent /usr/bin/env python > vdsm-tests.noarch: E: non-executable-script > /usr/share/vdsm/tests/fake-ssh-agent 644 /usr/bin/env python > vdsm-tests.noarch: E: wrong-script-interpreter > /usr/share/vdsm/tests/fake-virt-v2v /usr/bin/env python > vdsm-tests.noarch: E: non-executable-script > /usr/share/vdsm/tests/fake-virt-v2v 644 /usr/bin/env python > vdsm-tests.noarch: E: script-without-shebang > /usr/share/vdsm/tests/testValidation.py > This is also not a script, maybe wrong permissions? > vdsm-tests.noarch: E: zero-length > /usr/share/vdsm/tests/toolTests_empty.conf > This is bogus error, but we can probably replace this with generated temporary file. > vdsm-xmlrpc.noarch: W: spelling-error %description -l en_US vdsmd > vdsm-xmlrpc.noarch: W: spelling-error %description -l en_US vdsClient -> > clientele > vdsm-xmlrpc.noarch: W: no-documentation > vdsm-yajsonrpc.noarch: W: no-documentation > 48 packages and 1 specfiles checked; 49 errors, 120 warnings. > Sandro, can you help with adding a test to vdsm build, failing if the spec has errors? This would also would be useful to other projects like ovirt-imageio. Nir > > > -- > > SANDRO BONAZZOLA > > ASSOCIATE MANAGER, SOFTWARE ENGINEERING, EMEA ENG VIRTUALIZATION R&D > > Red Hat EMEA <https://www.redhat.com/> > <https://red.ht/sig> > TRIED. TESTED. TRUSTED. <https://redhat.com/trusted> > <http://www.teraplan.it/redhat-osd-2017/> > _______________________________________________ > Devel mailing list > Devel@ovirt.org > http://lists.ovirt.org/mailman/listinfo/devel
_______________________________________________ Devel mailing list Devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/devel