Spec URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi.spec SRPM URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi-1.0.1-1.fc25.src.rpm Description: Output plugin for collectd that send metrics to Gnocchi Fedora Account System Username: pkilambi
mrunge is working on collectd
a few remarks: - there is no reason for this not to be in Fedora - for py3 build, you could(should) use py3_build instead of pushd... popd - there are py2_install and py3_install as well - python_provide for python3 package is missing
Thanks I updated the spec with comments above and also rebased to 1.1.1. Please review so we can get this in asap. Spec URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi.spec SRPM URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi-1.1.1-1.fc25.src.rpm
- there is no need for this here: %if 0%{?with_python3} rm -rf %{py3dir} cp -a . %{py3dir} %endif you can simply remove it. - I'd write %install this way: %install %py2_install %if 0%{?with_python3} %py3_install %endif The config file is currently owned by both packages, this will make it impossible to install both in parallel. I'd suggest to make a -common package, which includes docs, license and config. Both subpackages can require it.
Thanks i updated the spec and srpm addressing the above comments and added a -common package: Spec URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi.spec SRPM URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi-1.1.1-1.fc25.src.rpm
Thank you, the package now nearly looks good to me. You'd still need to require collectd as runtime requirement. Then, please do not replace the default installed collectd.config file, please place https://github.com/jd/collectd-gnocchi/blob/master/collectd.conf#L1079-L1087 as a separate file in /etc/collectd.d/ (-common subpackage would need to require collectd then.) In default collectd installation, the python module is not loaded. it might make sense to add that to the snipped to be placed in /etc/collectd.d and especially fix the ModulePath https://github.com/jd/collectd-gnocchi/blob/master/collectd.conf#L1080 If you need it at all, that's to be checked.
collectd is not an explicit requirement in requirements or setup.cfg in the project. Hence i did not include it in the packaging. I prefer to leave this until its fixed in the code. We can always fix this as a subsequent patch? I dont want to block the packaging for this as its needed in ocata soon. Lemme know what you think.
in the current state, both packages are providing /etc/collectd.conf, which makes them conflicting. RPM makes them either or on this state. I guess, that's not what you wanted, no? collectd provides /etc/collectd.d, if you're putting something to that directory, you'd have to require collectd anyways.
Thanks Matthias. We fixed the upstream config accordingly. Here is the new updated package spec and srpm: Spec URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi.spec SRPM URL: https://pkilambi.fedorapeople.org/collectd-gnocchi/python-collectd-gnocchi-1.2.0-1.fc25.src.rpm
Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed Issues: ======= - Package installs properly. Note: Installation errors (see attachment) See: https://fedoraproject.org/wiki/Packaging:Guidelines ===== 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)". 13 files have unknown license. Detailed output of licensecheck in /home/mrunge/review/1406146-python-collectd-gnocchi/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: Package must own all directories that it creates. Note: Directories without known owners: /usr/lib/python3.6/site- packages, /usr/lib/python3.6 [x]: Package contains no bundled libraries without FPC exception. [x]: 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. [-]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 10240 bytes in 1 files. [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]: If (and only if) the source package includes the text of the license(s) in its own file, then that file, containing the text of the license(s) for the package is included in %license. [x]: Package requires other packages for directories it uses. [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]: %config files are marked noreplace or the reason is justified. [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]: No %config files under /usr. [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]: 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. [x]: 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]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [!]: Final provides and requires are sane (see attachments). [-]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in python2 -collectd-gnocchi , python3-collectd-gnocchi [?]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [x]: 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]: 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]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL. [x]: Spec use %global instead of %define unless justified. ===== EXTRA items ===== Generic: [!]: Rpmlint is run on all installed packages. Note: Mock build failed See: http://fedoraproject.org/wiki/Packaging/Guidelines#rpmlint [x]: Spec file according to URL is the same as in SRPM. Installation errors ------------------- INFO: mock.py version 1.3.3 starting (python version = 3.5.2)... Start: init plugins INFO: selinux enabled Finish: init plugins Start: run Start: chroot init INFO: calling preinit hooks INFO: enabled root cache INFO: enabled dnf cache Start: cleaning dnf metadata Finish: cleaning dnf metadata Mock Version: 1.3.3 INFO: Mock Version: 1.3.3 Finish: chroot init INFO: installing package(s): /home/mrunge/review/1406146-python-collectd-gnocchi/results/python2-collectd-gnocchi-1.2.0-1.fc26.noarch.rpm /home/mrunge/review/1406146-python-collectd-gnocchi/results/python3-collectd-gnocchi-1.2.0-1.fc26.noarch.rpm /home/mrunge/review/1406146-python-collectd-gnocchi/results/collectd-gnocchi-common-1.2.0-1.fc26.noarch.rpm ERROR: Command failed. See logs for output. # /usr/bin/dnf --installroot /var/lib/mock/fedora-rawhide-armhfp/root/ --releasever 26 --disableplugin=local --setopt=deltarpm=false install /home/mrunge/review/1406146-python-collectd-gnocchi/results/python2-collectd-gnocchi-1.2.0-1.fc26.noarch.rpm /home/mrunge/review/1406146-python-collectd-gnocchi/results/python3-collectd-gnocchi-1.2.0-1.fc26.noarch.rpm /home/mrunge/review/1406146-python-collectd-gnocchi/results/collectd-gnocchi-common-1.2.0-1.fc26.noarch.rpm --setopt=tsflags=nocontexts Rpmlint ------- Checking: collectd-gnocchi-common-1.2.0-1.fc26.noarch.rpm python2-collectd-gnocchi-1.2.0-1.fc26.noarch.rpm python3-collectd-gnocchi-1.2.0-1.fc26.noarch.rpm python-collectd-gnocchi-1.2.0-1.fc26.src.rpm collectd-gnocchi-common.noarch: W: non-standard-gid /etc/collectd.d/collectd-gnocchi.conf gnocchi python2-collectd-gnocchi.noarch: W: no-documentation python3-collectd-gnocchi.noarch: W: no-documentation 4 packages and 0 specfiles checked; 0 errors, 3 warnings. Requires -------- python2-collectd-gnocchi (rpmlib, GLIBC filtered): collectd-gnocchi-common python(abi) python-gnocchiclient python-keystoneauth1 collectd-gnocchi-common (rpmlib, GLIBC filtered): collectd config(collectd-gnocchi-common) python-collectd-gnocchi python3-collectd-gnocchi (rpmlib, GLIBC filtered): collectd-gnocchi-common python(abi) python-gnocchiclient python3-keystoneauth1 Provides -------- python2-collectd-gnocchi: python-collectd-gnocchi python2-collectd-gnocchi python2.7dist(collectd-gnocchi) python2dist(collectd-gnocchi) collectd-gnocchi-common: collectd-gnocchi-common config(collectd-gnocchi-common) python3-collectd-gnocchi: python3-collectd-gnocchi python3.6dist(collectd-gnocchi) python3dist(collectd-gnocchi) Source checksums ---------------- https://pypi.io/packages/source/c/collectd-gnocchi/collectd-gnocchi-1.2.0.tar.gz : CHECKSUM(SHA256) this package : b47e4741f70170a9fa5400f80fa0ac7aec11c7c5c01fbbe938728241059863db CHECKSUM(SHA256) upstream package : b47e4741f70170a9fa5400f80fa0ac7aec11c7c5c01fbbe938728241059863db Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -b 1406146 Buildroot used: fedora-rawhide-armhfp 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 Issues: - you have a circular dependency from common to python2-collectd.... - (optional) it would be good to execute tests during package build Both issues can be fixed during package import
Package request has been denied with the reason: review flag not set.
The package is ready for inclusion in RDO, but that wasn't either requested yet or wasn't approved yet.
The package is now available in RDO Trunk: https://trunk.rdoproject.org/centos7-master/82/8e/828e371c52e175df9bda93e4b1950482ed605352_db095c89/rpmbuild.log Distgit at https://github.com/rdo-packages/collectd-gnocchi-distgit