Bug 737972 (spacewalk-admin) - Review Request: spacewalk-admin - Various utility scripts and data files for RHN Satellite installations
Summary: Review Request: spacewalk-admin - Various utility scripts and data files for ...
Keywords:
Status: CLOSED ERRATA
Alias: spacewalk-admin
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Michael S.
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F-Spacewalk
TreeView+ depends on / blocked
 
Reported: 2011-09-13 14:21 UTC by Miroslav Suchý
Modified: 2012-04-12 05:59 UTC (History)
3 users (show)

Fixed In Version: spacewalk-admin-1.8.3-1.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-04-12 02:43:55 UTC
misc: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Miroslav Suchý 2011-09-13 14:21:00 UTC
SPEC:
http://miroslav.suchy.cz/fedora/spacewalk-admin/spacewalk-admin.spec
SRPM:
http://miroslav.suchy.cz/fedora/spacewalk-admin/spacewalk-admin-1.5.5-1.fc15.src.rpm

Description:
Various utility scripts and data files for Spacewalk installations.

Scratch build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=3348513

rpmlint output:
$ rpmlint /tmp/spacewalk-build/spacewalk-admin-1.5.5-1.fc15.src.rpm /tmp/spacewalk-build/noarch/spacewalk-admin-1.5.5-1.fc15.noarch.rpm
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-deploy-ca-cert.pl
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-generate-pem.pl
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-install-ssl-cert.pl
2 packages and 0 specfiles checked; 0 errors, 3 warnings.

Comment 1 Michael S. 2012-03-24 07:28:04 UTC
Hi,

can you update the spec file for the latest release  ( and the tarball for the version 1.6.X are missing ) ?

also, a few note :
- for a fedora rpm, BuildRoot is no longer needed, same goes for %defattr, and %clean, and cleaning of %install

- you should use %global, not %define for %rhnroot
http://fedoraproject.org/wiki/Packaging:Guidelines#.25global_preferred_over_.25define

- you should consider using packages rather than filedesps, for reasons listed in the guideline :
http://fedoraproject.org/wiki/Packaging:Guidelines#File_Dependencies

- you should also ( IMHO ) place requires on 1 line each, as it permit to have easier to read diff when sending patch

- the file spacewalk-service look like a init script, and recent fedora use systemd, so the file should be converted
http://fedoraproject.org/wiki/Packaging:Systemd

Comment 2 Michael S. 2012-03-24 07:37:54 UTC
Also, there is no file to give the license of the tarball, and you should ask upstream to add one :
http://fedoraproject.org/wiki/Packaging:LicensingGuidelines#License_Text

Comment 3 Miroslav Suchý 2012-03-26 08:06:39 UTC
Updated:
http://miroslav.suchy.cz/fedora/spacewalk-admin/spacewalk-admin-1.8.1-1.fc16.src.rpm
http://miroslav.suchy.cz/fedora/spacewalk-admin/spacewalk-admin.spec

Please note that I'm member of upstream. Therefore I created new release (as I put those changes directly to upstream) and not put it in spec as patch.

> - for a fedora rpm, BuildRoot is no longer needed, same goes for %defattr, and
%clean, and cleaning of %install

We build the package for EPEL and mainly EPEL5 as well. And there there it is needed. It is easier to maintain the spec file when we can leave it there (and it makes no harm of Fedora). But if you insinst on that I can make separate spec for Fedora and for EPEL.

> you should consider using packages rather than filedesps
fixed

> you should use %global, not %define for %rhnroot
fixed

> you should also ( IMHO ) place requires on 1 line each, as it permit to have
easier to read diff when sending patch
That is only two perl packages. Somebody in past decided that it would be nice to have perl packages together. I do not think it is necessary, but if you see it as blocker, I can change it.

> the file spacewalk-service look like a init script, and recent fedora use
> systemd, so the file should be converted
> http://fedoraproject.org/wiki/Packaging:Systemd
It looks like init script, but it is not.
Spacewalk server is layered application and is build on top of several services (jabberd, httpd, tomcat6, osad-dispatcher, postgresql...). And since usually Spacewalk server is run on dedicated machine and these services are run just because Spacewalk server - if sysadmin want to restart Spacewalk, he would have to write:
service tomcat6 stop
service httpd stop 
...
service  httpd start
service  tomcat6 start
which means: he has to enumerate all services which Spacewalk requires, not forget single one and do it in correct order.
To make it easy for sysadmin, we provide spacewalk-service script, which can do that.
But it does *not* start those service during boot. And neither stop those services during shutdown. Each of those services still has its own initd/systemd script.

Comment 4 Miroslav Suchý 2012-03-26 08:10:25 UTC
I forgot that in previous comment:
> Also, there is no file to give the license of the tarball
Fixed as well.

Comment 5 Michael S. 2012-03-26 08:40:05 UTC
No, neither buildroot or package on the same line are blocking.

I will start the formal review soon.

Comment 6 Michael S. 2012-03-26 09:14:47 UTC
The directory /var/lib/rhn is already owned by spacewalk-config, but according to the policy, the current way is ok ( unless spacewalk-config end somehow in the dependency chain of spacewalk-admin, but it doesn't seems to be the case, i am just mentioning to be complete ).

So that's ok, according to https://fedoraproject.org/wiki/Packaging:Guidelines#File_and_Directory_Ownership

However, it seems that the package requires sudo, and nothing use it in the script, is this correct ?

The same goes for restorecon, I didn't found where it is needed in the current tarball.

Comment 7 Miroslav Suchý 2012-03-26 09:48:26 UTC
You are correct. Usage of restorecon in this package has been removed year ago. And sudo even earlier. I will remove those requires completely.

Comment 9 Michael S. 2012-03-26 15:40:12 UTC
Package Review
==============

Key:
- = N/A
x = Pass
! = Fail
? = Not evaluated



==== Generic ====
[x]: MUST Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: MUST Package successfully compiles and builds into binary rpms on at
     least one supported primary architecture.
[-]: MUST %build honors applicable compiler flags or justifies otherwise.
[x]: MUST All build dependencies are listed in BuildRequires, except for any
     that are listed in the exceptions section of Packaging Guidelines.
[x]: MUST Buildroot is not present
     Note: Buildroot is not needed unless packager plans to package for EPEL5
[x]: MUST Package contains no bundled libraries.
[!]: MUST Changelog in prescribed format.
[x]: MUST Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
     Note: Clean is needed only if supporting EPEL
[x]: MUST Sources contain only permissible code or content.
[x]: MUST %config files are marked noreplace or the reason is justified.
[x]: MUST Each %files section contains %defattr if rpm < 4.4
     Note: defattr(....) present in %files section. This is OK if packaging
     for EPEL5. Otherwise not needed
[x]: MUST Macros in Summary, %description expandable at SRPM build time.
[x]: MUST Package requires other packages for directories it uses.
[x]: MUST Package uses nothing in %doc for runtime.
[x]: MUST Package is not known to require ExcludeArch.
[x]: MUST Permissions on files are set properly.
[x]: MUST Package does not contain duplicates in %files.
[x]: MUST Spec file lacks Packager, Vendor, PreReq tags.
[x]: MUST Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
     Note: rm -rf is only needed if supporting EPEL5
[x]: MUST Large documentation files are in a -doc subpackage, if required.
[x]: MUST 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 %doc.
[x]: MUST License field in the package spec file matches the actual license.
     Note: Licenses found: "UNKNOWN" For detailed output of licensecheck see
     file: /home/misc/checkout/git/FedoraReview/src/737972/licensecheck.txt
[x]: MUST Package consistently uses macros (instead of hard-coded directory
     names).
[x]: MUST Package is named according to the Package Naming Guidelines.
[x]: MUST No %config files under /usr.
[x]: MUST Package does not generate any conflict.
[x]: MUST Package obeys FHS, except libexecdir and /usr/target.
[x]: MUST If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: MUST Package must own all directories that it creates.
[x]: MUST Package does not own files or directories owned by other packages.
[x]: MUST Package installs properly.
[x]: MUST Requires correct, justified where necessary.
[!]: MUST Rpmlint output is silent.

rpmlint spacewalk-admin-1.8.2-1.fc18.src.rpm

1 packages and 0 specfiles checked; 0 errors, 0 warnings.


rpmlint spacewalk-admin-1.8.2-1.fc18.noarch.rpm

spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-generate-pem.pl
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-deploy-ca-cert.pl
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-install-ssl-cert.pl
1 packages and 0 specfiles checked; 0 errors, 3 warnings.


[x]: MUST Sources used to build the package match the upstream source, as
     provided in the spec URL.

[x]: MUST Spec file is legible and written in American English.
[x]: MUST Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[-]: MUST Package contains a SysV-style init script if in need of one.
[x]: MUST File names are valid UTF-8.
[x]: SHOULD Reviewer should test that the package builds in mock.
[x]: SHOULD 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]: SHOULD Dist tag is present.
[x]: SHOULD No file requires outside of /etc, /bin, /sbin, /usr/bin,
     /usr/sbin.
[x]: SHOULD Final provides and requires are sane (rpm -q --provides and rpm -q
     --requires).
[x]: SHOULD Package functions as described.
[x]: SHOULD Latest version is packaged.
[x]: SHOULD Package does not include license text files separate from
     upstream.
[x]: SHOULD SourceX is a working URL.
[x]: SHOULD Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: SHOULD Package should compile and build into binary rpms on all supported
     architectures.
[x]: SHOULD %check is present and all tests pass.
[x]: SHOULD Packages should try to preserve timestamps of original installed
     files.
[x]: SHOULD Spec use %global instead of %define.

Issues:
[!]: MUST Rpmlint output is silent.

rpmlint spacewalk-admin-1.8.2-1.fc18.src.rpm

1 packages and 0 specfiles checked; 0 errors, 0 warnings.


rpmlint spacewalk-admin-1.8.2-1.fc18.noarch.rpm

spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-generate-pem.pl
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-deploy-ca-cert.pl
spacewalk-admin.noarch: W: no-manual-page-for-binary rhn-install-ssl-cert.pl
1 packages and 0 specfiles checked; 0 errors, 3 warnings.


See: http://fedoraproject.org/wiki/Packaging/Guidelines#rpmlint


[!]: MUST Changelog in prescribed format.

It seems the changelog do not have the email, see
https://fedoraproject.org/wiki/Packaging/Guidelines#Changelogs



The rpmlint are just false positives ( you can add manpages later if you have time, but that's not blocking ). 

However, the lack of email in changelog is blocking :/
That's the last thing to fix and I can validate the package.

Comment 11 Michael S. 2012-03-27 13:15:05 UTC
[x]: MUST Changelog in prescribed format.

So the package is good to go.

Comment 12 Miroslav Suchý 2012-03-27 13:36:57 UTC
New Package SCM Request
=======================
Package Name: spacewalk-admin
Short Description: Various utility scripts and data files for RHN Satellite installations
Owners: msuchy
Branches: F-17, F-16, EL-5, EL-6
InitialCC:

Comment 13 Gwyn Ciesla 2012-03-27 13:40:01 UTC
Git done (by process-git-requests).

Comment 14 Fedora Update System 2012-03-27 18:06:42 UTC
spacewalk-admin-1.8.3-1.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/spacewalk-admin-1.8.3-1.fc17

Comment 15 Fedora Update System 2012-03-27 18:31:02 UTC
spacewalk-admin-1.8.3-1.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/spacewalk-admin-1.8.3-1.el5

Comment 16 Fedora Update System 2012-03-27 18:31:33 UTC
spacewalk-admin-1.8.3-1.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/spacewalk-admin-1.8.3-1.el6

Comment 17 Fedora Update System 2012-03-28 04:54:51 UTC
spacewalk-admin-1.8.3-1.el5 has been pushed to the Fedora EPEL 5 testing repository.

Comment 18 Fedora Update System 2012-04-12 02:43:55 UTC
spacewalk-admin-1.8.3-1.fc17 has been pushed to the Fedora 17 stable repository.

Comment 19 Fedora Update System 2012-04-12 05:58:55 UTC
spacewalk-admin-1.8.3-1.el5 has been pushed to the Fedora EPEL 5 stable repository.

Comment 20 Fedora Update System 2012-04-12 05:59:48 UTC
spacewalk-admin-1.8.3-1.el6 has been pushed to the Fedora EPEL 6 stable repository.


Note You need to log in before you can comment on or make changes to this bug.