Bug 1578464

Summary: Package Review: python-networking-ansible
Product: [Community] RDO Reporter: Dan Radez <dradez>
Component: Package ReviewAssignee: Alfredo Moralejo <amoralej>
Status: CLOSED UPSTREAM QA Contact: hguemar
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: amoralej, bfournie, jpena, karlthered
Target Milestone: ---Flags: amoralej: rdo-review+
Target Release: trunk   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-04-30 12:19:54 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1550514, 1579440    

Description Dan Radez 2018-05-15 16:05:25 UTC
https://radez.fedorapeople.org/python-networking-ansible.spec
https://radez.fedorapeople.org/python-networking-ansible-0.0.1-1.src.rpm

$ rpmlint python-networking-ansible.spec python-networking-ansible-0.0.1-1.src.rpm
1 packages and 1 specfiles checked; 0 errors, 0 warnings.

Comment 1 Dan Radez 2018-05-15 16:13:12 UTC
networking-ansible is an ML2 driver for neutron that abstracts switch interactions out to the ansible networking modules.

Source is at https://github.com/openstack/networking-ansible

Comment 2 Javier Peña 2018-05-22 15:18:09 UTC
Initial licensecheck output:

$ licensecheck -r .
./.coveragerc: *No copyright* UNKNOWN
./.gitreview: *No copyright* UNKNOWN
./.mailmap: *No copyright* UNKNOWN
./.stestr.conf: *No copyright* UNKNOWN
./CONTRIBUTING.rst: *No copyright* UNKNOWN
./HACKING.rst: *No copyright* UNKNOWN
./LICENSE: *No copyright* Apache (v2.0)
./README.rst: *No copyright* UNKNOWN
./babel.cfg: *No copyright* UNKNOWN
./requirements.txt: *No copyright* UNKNOWN
./setup.cfg: *No copyright* Apache
./setup.py: Apache (v2.0) GENERATED FILE
./test-requirements.txt: *No copyright* UNKNOWN
./tox.ini: *No copyright* UNKNOWN
./networking_ansible/__init__.py: *No copyright* Apache (v2.0)
./networking_ansible/config.py: Apache (v2.0)
./networking_ansible/constants.py: Apache (v2.0)
./doc/source/conf.py: *No copyright* Apache (v2.0)
./doc/source/index.rst: *No copyright* UNKNOWN
./doc/source/readme.rst: *No copyright* UNKNOWN
./networking_ansible/ml2/mech_driver.py: Apache (v2.0)
./networking_ansible/tests/base.py: Apache (v2.0)
./networking_ansible/tests/test_networking_ansible.py: *No copyright* Apache (v2.0)
./networking_ansible/trunk/trunk_driver.py: Apache (v2.0)
./releasenotes/source/conf.py: *No copyright* Apache (v2.0) GENERATED FILE
./releasenotes/source/index.rst: *No copyright* UNKNOWN
./releasenotes/source/unreleased.rst: *No copyright* UNKNOWN
./doc/source/admin/index.rst: *No copyright* UNKNOWN
./doc/source/cli/index.rst: *No copyright* UNKNOWN
./doc/source/configuration/index.rst: *No copyright* UNKNOWN
./doc/source/contributor/contributing.rst: *No copyright* UNKNOWN
./doc/source/contributor/index.rst: *No copyright* UNKNOWN
./doc/source/install/common_configure.rst: *No copyright* UNKNOWN
./doc/source/install/common_prerequisites.rst: *No copyright* UNKNOWN
./doc/source/install/get_started.rst: *No copyright* UNKNOWN
./doc/source/install/index.rst: *No copyright* UNKNOWN
./doc/source/install/install-obs.rst: *No copyright* UNKNOWN
./doc/source/install/install-rdo.rst: *No copyright* UNKNOWN
./doc/source/install/install-ubuntu.rst: *No copyright* UNKNOWN
./doc/source/install/install.rst: *No copyright* UNKNOWN
./doc/source/install/next-steps.rst: *No copyright* UNKNOWN
./doc/source/install/verify.rst: *No copyright* UNKNOWN
./doc/source/reference/index.rst: *No copyright* UNKNOWN
./doc/source/user/index.rst: *No copyright* UNKNOWN
./etc/neutron/plugins/ml2/ml2_conf_ansible.ini.sample: *No copyright* UNKNOWN

The package is licensed using the Apache 2.0 license, and a quick look at the repo history shows that it was originally created using CookieCutter.

Comment 3 Alfredo Moralejo 2018-06-19 10:53:34 UTC
Fedora review based on the spec in https://review.rdoproject.org/r/#/c/14260/

SRPM URL: https://logs.rdoproject.org/60/14260/11/check/DLRN-rpmbuild/Z2f0318edb89c4dbfb111d2926ed9e360/centos/current/python-networking-ansible-0.0.1-0.20180618150806.c0ddb05.el7.src.rpm

Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed


===== MUST items =====

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "Apache (v2.0)", "*No copyright* Apache", "Unknown or
     generated", "*No copyright* Apache (v2.0)". 72 files have unknown
     license. Detailed output of licensecheck in /tmp/python-networking-
     ansible/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[x]: Package contains no bundled libraries without FPC exception.
[-]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
     names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
     one supported primary architecture.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
     provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 0 bytes in 0 files.
[x]: Packages must not store files under /srv, /opt or /usr/local

Python:
[x]: Python eggs must not download any dependencies during the build
     process.
[x]: A package which is used by another package via an egg interface should
     provide egg info.
[ ]: Package meets the Packaging Guidelines::Python
[x]: Package contains BR: python2-devel or python3-devel
[x]: Binary eggs must be removed in %prep

===== SHOULD items =====

Generic:
[x]: Avoid bundling fonts in non-fonts packages.
     Note: Package contains font files
[-]: If the source package does not include license text(s) as a separate
     file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in python2
     -networking-ansible , python2-networking-ansible-tests , python-
     networking-ansible-doc
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: SourceX tarball generation or download is documented.
     Note: Package contains tarball without URL, check comments
[-]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[-]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
     files.
[x]: Spec use %global instead of %define unless justified.
     Note: %define requiring justification: %define upstream_version
     0.0.1.dev14
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: SourceX is a working URL.


Rpmlint
-------
Checking: python2-networking-ansible-0.0.1-0.20180618150806.c0ddb05.el7.noarch.rpm
          python2-networking-ansible-tests-0.0.1-0.20180618150806.c0ddb05.el7.noarch.rpm
          python-networking-ansible-doc-0.0.1-0.20180618150806.c0ddb05.el7.noarch.rpm
          python-networking-ansible-0.0.1-0.20180618150806.c0ddb05.el7.src.rpm
python2-networking-ansible.noarch: W: spelling-error Summary(en_US) penStack -> pen Stack, pen-stack, pens tack
python2-networking-ansible.noarch: W: summary-not-capitalized C penStack Neutron ML2 driver for Ansible Networking
python2-networking-ansible.noarch: E: no-changelogname-tag
python2-networking-ansible.noarch: W: no-documentation
python2-networking-ansible-tests.noarch: E: no-changelogname-tag
python2-networking-ansible-tests.noarch: W: no-documentation
python-networking-ansible-doc.noarch: E: no-changelogname-tag
python-networking-ansible.src: E: no-changelogname-tag
python-networking-ansible.src: W: invalid-url Source0: networking-ansible-0.0.1.dev14-0.20180618150806.c0ddb05.tar.gz
4 packages and 0 specfiles checked; 4 errors, 5 warnings.




Requires
--------
python2-networking-ansible-tests (rpmlib, GLIBC filtered):
    python(abi)
    python2-mock
    python2-networking-ansible
    python2-oslotest
    python2-stestr
    python2-subunit

python2-networking-ansible (rpmlib, GLIBC filtered):
    python(abi)
    python-neutron
    python2-ansible-runner
    python2-neutron-lib
    python2-oslo-config
    python2-pbr

python-networking-ansible-doc (rpmlib, GLIBC filtered):



Provides
--------
python2-networking-ansible-tests:
    python2-networking-ansible-tests

python2-networking-ansible:
    python-networking-ansible
    python2-networking-ansible

python-networking-ansible-doc:
    python-networking-ansible-doc



Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02
Command line :/usr/bin/fedora-review -m dlrn-master -rn python-networking-ansible-0.0.1-0.20180618150806.c0ddb05.el7.src.rpm
Buildroot used: dlrn-centos-master-x86_64-1
Active plugins: Python, Generic, Shell-api
Disabled plugins: Java, C/C++, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP
Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6


Package is approved.