Spec URL: https://github.com/brocade/bsn-fc-txptd/blob/master/SPEC/fc_txptd.spec SRPM URL: https://github.com/brocade/bsn-fc-txptd/blob/master/fc_txptd-0.1-1.fc28.src.rpm Description: The purpose of this daemon is to add FC network intelligence in host and host intelligence in FC network. This daemon would inter operate with Brocade FC fabric in order to improve the response time of the MPIO fail over. In future, it can also collect the congestion related details and perform workload analysis, and provide QOS at application level by inter operating with application performance profiling software. Fedora Account System Username: muneendra
make %{?_smp_mflags} → %make_build make install DESTDIR=%{buildroot} → %make_install - License seems to be MIT in the headers: https://github.com/brocade/bsn-fc-txptd/blob/master/fpin_main.c Not GPL. Please ask upstream for a separate license file - No: %dir /%{_sysdir}/systemd/system /%{_sysdir}/systemd/system/fctxpd.service Use: %{_unitdir}/fctxpd.service You also need to add the SystemD scriptlets, see https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#Systemd BuildRequires: systemd-rpm-macros […] %post %systemd_post fctxpd.service %preun %systemd_preun fctxpd.service %postun %systemd_postun_with_restart fctxpd.service - /sbin/fctxpd → %{_sbindir}/fctxpd
(In reply to Robert-André Mauchin from comment #1) > make %{?_smp_mflags} → %make_build > > make install DESTDIR=%{buildroot} → %make_install > > - License seems to be MIT in the headers: > https://github.com/brocade/bsn-fc-txptd/blob/master/fpin_main.c > > Not GPL. Please ask upstream for a separate license file > > - No: > > %dir /%{_sysdir}/systemd/system > /%{_sysdir}/systemd/system/fctxpd.service > > Use: > > %{_unitdir}/fctxpd.service > > You also need to add the SystemD scriptlets, see > https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#Systemd > > BuildRequires: systemd-rpm-macros > > […] > > %post > %systemd_post fctxpd.service > > %preun > %systemd_preun fctxpd.service > > %postun > %systemd_postun_with_restart fctxpd.service > > - /sbin/fctxpd → %{_sbindir}/fctxpd Thanks for the feedback. I will update the changes accordingly.
Hi All, I have addressed the review comments and the details of SPEC and SRPM are available in the below path. Spec URL: https://github.com/brocade/bsn-fc-txptd/blob/master/SPEC/fc_txptd.spec SRPM URL: https://github.com/brocade/bsn-fc-txptd/blob/master/fc_txptd-0.1-1.fc28.src.rpm Regards, Muneendra.
- %global _sysdir usr/lib is not needed anymore - please separate your %changelog entries by a newline - the archive seems corrupted, please check the Source URL. Also if you package the "master" tip, you should link to the commit: %global commit f6f9e112f016089709cfd15b33df5ab0996e5c08 %global shortcommit %(c=%{commit}; echo ${c:0:7}) %global snapshotdate 20190812 Name: fc_txptd Version: 0.1 Release: 1.%{snapshotdate}git%{shortcommit}%{?dist} Summary: Fibrechannel transport daemon License: GPLv2+ URL: https://github.com/brocade/bsn-fc-txptd/ Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz […] %prep %autosetup -n %{name}-%{commit} Although you should tag a Release in Github, it would be better. Also you shouldn't upload binaries like fc_txptd-0.1.tar.gz and fc_txptd-0.1-1.fc28.src.rpm to your GIT repo. Upload them to 3rd party hosting service if you need to reference them here.
(In reply to Robert-André Mauchin from comment #4) > - %global _sysdir usr/lib is not needed anymore > > - please separate your %changelog entries by a newline > > - the archive seems corrupted, please check the Source URL. Also if you > package the "master" tip, you should link to the commit: > > %global commit f6f9e112f016089709cfd15b33df5ab0996e5c08 > %global shortcommit %(c=%{commit}; echo ${c:0:7}) > %global snapshotdate 20190812 > > Name: fc_txptd > Version: 0.1 > Release: 1.%{snapshotdate}git%{shortcommit}%{?dist} > Summary: Fibrechannel transport daemon > > License: GPLv2+ > URL: https://github.com/brocade/bsn-fc-txptd/ > Source0: %{url}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz > > […] > > %prep > %autosetup -n %{name}-%{commit} > > > Although you should tag a Release in Github, it would be better. Also you > shouldn't upload binaries like fc_txptd-0.1.tar.gz and > fc_txptd-0.1-1.fc28.src.rpm to your GIT repo. Upload them to 3rd party > hosting service if you need to reference them here. Hi Robert, Thanks for the review. As you mentioned above i have removed the fc_txptd-0.1.tar.gz and fc_txptd-0.1-1.fc28.src.rpm from the GIT repo. Sorry iam new to the packaging and have couple of queries on the same. In the below link it was mentioned that If you have no place to put your spec and SRPM then i can place the same in https://copr.fedorainfracloud.org. https://fedoraproject.org/wiki/Package_Review_Process As per the above doc i have created a project https://copr.fedorainfracloud.org/coprs/muneendra/fctxpd/ And build the package for few distributions. https://copr.fedorainfracloud.org/coprs/muneendra/fctxpd/build/998427/ Can i mention spec URL and SRPM URL as below . Is this right way. Spec URL: https://github.com/brocade/bsn-fc-txptd/blob/master/SPEC/fc_txptd.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/muneendra/fctxpd/srpm-builds/00998427/fc_txptd-0.1-1.20190813gitc195e67.fc28.src.rpm Any inputs here will help me a lot. Regards, Muneendra.
Yes, COPR is fine. - Builds failed for me because the archive downloaded has a different root folder, so the folder should be changed in autosetup: %prep %autosetup -n bsn-fc-txptd-%{commit} - Another issue is the %changelog entry: fc_txptd.x86_64: W: incoherent-version-in-changelog 0.1-1 ['0.1-1.20190813gitc195e67.fc31', '0.1-1.20190813gitc195e67'] It must reflect the Version-Release from the header, so: *Mon Aug 12 2019 Muneendra <muneendra.kumar> - 0.1-1.20190813gitc195e67 The rest of the SPEC is fine. Package Review ============== Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated [ ] = Manual review needed ===== MUST items ===== C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: If your application is a C or C++ application you must list a BuildRequires against gcc, gcc-c++ or clang. [x]: Header files in -devel subpackage, if present. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs. 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: "Unknown or generated", "GPL (v2 or later)", "*No copyright* GNU General Public License (v2)". 9 files have unknown license. Detailed output of licensecheck in /home/bob/packaging/review/fc_txptd/review-fc_txptd/licensecheck.txt [x]: License file installed when any subpackage combination is installed. [x]: %build honors applicable compiler flags or justifies otherwise. [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. [x]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [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]: Package installs properly. [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]: 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]: Packages must not store files under /srv, /opt or /usr/local ===== SHOULD items ===== Generic: [-]: 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). [-]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in fc_txptd [?]: Package functions as described. [x]: Latest version is packaged. [x]: Package does not include license text files separate from upstream. [-]: 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: [x]: Rpmlint is run on debuginfo package(s). Note: There are rpmlint messages (see attachment). [x]: Rpmlint is run on all installed packages. Note: There are rpmlint messages (see attachment). [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. [x]: Spec file according to URL is the same as in SRPM. Rpmlint ------- Checking: fc_txptd-0.1-1.20190813gitc195e67.fc31.x86_64.rpm fc_txptd-debuginfo-0.1-1.20190813gitc195e67.fc31.x86_64.rpm fc_txptd-debugsource-0.1-1.20190813gitc195e67.fc31.x86_64.rpm fc_txptd-0.1-1.20190813gitc195e67.fc31.src.rpm fc_txptd.x86_64: W: spelling-error Summary(en_US) Fibrechannel -> Channelize fc_txptd.x86_64: W: spelling-error %description -l en_US failover -> fail over, fail-over, spillover fc_txptd.x86_64: W: incoherent-version-in-changelog 0.1-1 ['0.1-1.20190813gitc195e67.fc31', '0.1-1.20190813gitc195e67'] fc_txptd.x86_64: W: no-manual-page-for-binary fctxpd fc_txptd-debuginfo.x86_64: W: spelling-error Summary(en_US) fc -> cf, dc, f fc_txptd-debuginfo.x86_64: W: spelling-error Summary(en_US) txptd fc_txptd-debuginfo.x86_64: W: spelling-error %description -l en_US fc -> cf, dc, f fc_txptd-debuginfo.x86_64: W: spelling-error %description -l en_US txptd fc_txptd-debugsource.x86_64: W: spelling-error Summary(en_US) fc -> cf, dc, f fc_txptd-debugsource.x86_64: W: spelling-error Summary(en_US) txptd fc_txptd-debugsource.x86_64: W: spelling-error %description -l en_US fc -> cf, dc, f fc_txptd-debugsource.x86_64: W: spelling-error %description -l en_US txptd fc_txptd.src: W: spelling-error Summary(en_US) Fibrechannel -> Channelize fc_txptd.src: W: spelling-error %description -l en_US failover -> fail over, fail-over, spillover 4 packages and 0 specfiles checked; 0 errors, 14 warnings.
(In reply to Robert-André Mauchin from comment #6) > Yes, COPR is fine. > > - Builds failed for me because the archive downloaded has a different root > folder, so the folder should be changed in autosetup: > > %prep > %autosetup -n bsn-fc-txptd-%{commit} > > - Another issue is the %changelog entry: > > fc_txptd.x86_64: W: incoherent-version-in-changelog 0.1-1 > ['0.1-1.20190813gitc195e67.fc31', '0.1-1.20190813gitc195e67'] > > It must reflect the Version-Release from the header, so: > > *Mon Aug 12 2019 Muneendra <muneendra.kumar> - > 0.1-1.20190813gitc195e67 > > > The rest of the SPEC is fine. > > > Package Review > ============== > > Legend: > [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated > [ ] = Manual review needed > > > ===== MUST items ===== > > C/C++: > [x]: Package does not contain kernel modules. > [x]: Package contains no static executables. > [x]: If your application is a C or C++ application you must list a > BuildRequires against gcc, gcc-c++ or clang. > [x]: Header files in -devel subpackage, if present. > [x]: Package does not contain any libtool archives (.la) > [x]: Rpath absent or only used for internal libs. > > 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: "Unknown or generated", "GPL (v2 or later)", "*No copyright* > GNU General Public License (v2)". 9 files have unknown license. > Detailed output of licensecheck in > /home/bob/packaging/review/fc_txptd/review-fc_txptd/licensecheck.txt > [x]: License file installed when any subpackage combination is installed. > [x]: %build honors applicable compiler flags or justifies otherwise. > [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. > [x]: Package contains systemd file(s) if in need. > [x]: Useful -debuginfo package or justification otherwise. > [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]: Package installs properly. > [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]: 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]: Packages must not store files under /srv, /opt or /usr/local > > ===== SHOULD items ===== > > Generic: > [-]: 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). > [-]: Fully versioned dependency in subpackages if applicable. > Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in fc_txptd > [?]: Package functions as described. > [x]: Latest version is packaged. > [x]: Package does not include license text files separate from upstream. > [-]: 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: > [x]: Rpmlint is run on debuginfo package(s). > Note: There are rpmlint messages (see attachment). > [x]: Rpmlint is run on all installed packages. > Note: There are rpmlint messages (see attachment). > [x]: Large data in /usr/share should live in a noarch subpackage if package > is arched. > [x]: Spec file according to URL is the same as in SRPM. > > > Rpmlint > ------- > Checking: fc_txptd-0.1-1.20190813gitc195e67.fc31.x86_64.rpm > fc_txptd-debuginfo-0.1-1.20190813gitc195e67.fc31.x86_64.rpm > fc_txptd-debugsource-0.1-1.20190813gitc195e67.fc31.x86_64.rpm > fc_txptd-0.1-1.20190813gitc195e67.fc31.src.rpm > fc_txptd.x86_64: W: spelling-error Summary(en_US) Fibrechannel -> Channelize > fc_txptd.x86_64: W: spelling-error %description -l en_US failover -> fail > over, fail-over, spillover > fc_txptd.x86_64: W: incoherent-version-in-changelog 0.1-1 > ['0.1-1.20190813gitc195e67.fc31', '0.1-1.20190813gitc195e67'] > fc_txptd.x86_64: W: no-manual-page-for-binary fctxpd > fc_txptd-debuginfo.x86_64: W: spelling-error Summary(en_US) fc -> cf, dc, f > fc_txptd-debuginfo.x86_64: W: spelling-error Summary(en_US) txptd > fc_txptd-debuginfo.x86_64: W: spelling-error %description -l en_US fc -> cf, > dc, f > fc_txptd-debuginfo.x86_64: W: spelling-error %description -l en_US txptd > fc_txptd-debugsource.x86_64: W: spelling-error Summary(en_US) fc -> cf, dc, f > fc_txptd-debugsource.x86_64: W: spelling-error Summary(en_US) txptd > fc_txptd-debugsource.x86_64: W: spelling-error %description -l en_US fc -> > cf, dc, f > fc_txptd-debugsource.x86_64: W: spelling-error %description -l en_US txptd > fc_txptd.src: W: spelling-error Summary(en_US) Fibrechannel -> Channelize > fc_txptd.src: W: spelling-error %description -l en_US failover -> fail over, > fail-over, spillover > 4 packages and 0 specfiles checked; 0 errors, 14 warnings. Hi Robert, I have made the changes and build the package for few distributions. https://copr.fedorainfracloud.org/coprs/muneendra/fctxpd/build/1001203/ And below is the links for the updated Spec and SRPM URL Spec URL: https://github.com/brocade/bsn-fc-txptd/blob/master/SPEC/fc_txptd.spec SRPM URL: https://copr-be.cloud.fedoraproject.org/results/muneendra/fctxpd/srpm-builds/01001203/fc_txptd-0.1-1.20190813gitc195e67.fc28.src.rpm Regards, Muneendra.
Looks good to me, package is approved. You still need to find a sponsor, see https://fedoraproject.org/wiki/How_to_get_sponsored_into_the_packager_group
Sponsored.
(fedscm-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/fctxpd
The spec file name does not match the package name. Please pick up one and redo the review.
Hi Robert, Updated the spec and SRPM as the package name and the spec file does not match. I have made the changes and build the package for few distributions. https://copr.fedorainfracloud.org/coprs/muneendra/fctxpd/build/1027382/ And below is the links for the updated Spec and SRPM URL Spec URL:https://github.com/brocade/bsn-fc-txptd/blob/master/SPEC/fctxpd.spec SRPM URL:https://copr-be.cloud.fedoraproject.org/results/muneendra/fctxpd/epel-7-x86_64/01027382-fctxpd/fctxpd-0.1-1.20190813gitc195e67.el7.src.rpm Regards, Muneendra.
THis is the change i did. rename from fc_txptd.spec to fctxpd.spec and in spec file i made the below change -Name: fc_txptd +Name: fctxpd Version: 0.1 Release: 1.%{snapshotdate}git%{shortcommit}%{?dist} Summary: Fibrechannel transport daemo
Is the missing second "t" on purpose? I mean fctxp(t)d. It's there in the upstream name and the original package name.
Is the missing second "t" on purpose? >>Yes
This was the mistake which i did while creating the upstream name and the original package name(fc_txptd). It should be fctxpd. Sorry for the mistake.
FEDORA-2019-3b88c02582 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-3b88c02582
fctxpd-0.1-1.20190813gitc195e67.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-3b88c02582
fctxpd-0.1-1.20190813gitc195e67.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.
FEDORA-EPEL-2019-b998644b53 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-b998644b53
fctxpd-0.1-1.20190813gitc195e67.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-b998644b53
FEDORA-EPEL-2019-513373fe60 has been submitted as an update to Fedora EPEL 8. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-513373fe60
fctxpd-0.1-1.20190813gitc195e67.el8 has been pushed to the Fedora EPEL 8 testing repository. If problems still persist, please make note of it in this bug report. See https://fedoraproject.org/wiki/QA:Updates_Testing for instructions on how to install test updates. You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2019-513373fe60
fctxpd-0.1-1.20190813gitc195e67.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.
fctxpd-0.1-1.20190813gitc195e67.el8 has been pushed to the Fedora EPEL 8 stable repository. If problems still persist, please make note of it in this bug report.