Bug 290081
Summary: | Review Request: bodhi - A modular web-system that facilitates the process of publishing updates for a Fedora-based software distribution | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Luke Macken <lmacken> |
Component: | Package Review | Assignee: | Tim Lauridsen <tim.lauridsen> |
Status: | CLOSED NEXTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | a.badger, fedora-package-review, notting, pfrields, tim.lauridsen |
Target Milestone: | --- | Flags: | tim.lauridsen:
fedora-review+
kevin: fedora-cvs+ |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2007-10-21 23:03:07 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Luke Macken
2007-09-13 21:27:28 UTC
Note: the client is not fully functional with the current server deployment. Luke: You should add this to the spec file %if 0%{?fedora} >= 8 BuildRequires: python-setuptools-devel %else BuildRequires: python-setuptools %endif to make it work F8 and later too. $ rpmlint ~/rpmbuild/RPMS/noarch/bodhi-server-0.2.0-1.fc7.noarch.rpm bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/tools/bodhi-client.py 0644 bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/tests/test_cli.py 0644 bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/tools/dev_init.py 0644 bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/tools/test-bodhi.py 0644 bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/tools/init.py 0644 bodhi-server.noarch: W: non-executable-in-bin /usr/bin/start-bodhi.pyo 0644 bodhi-server.noarch: W: non-executable-in-bin /usr/bin/start-bodhi.pyc 0644 bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/modifyrepo.py 0644 bodhi-server.noarch: E: non-executable-script /usr/lib/python2.5/site-packages/bodhi/tools/pickledb.py 0644 look like it needs a little chmod magic to silence rpmlint $ rpmlint ~/rpmbuild/RPMS/noarch/bodhi-client-0.2.0-1.fc7.noarch.rpm bodhi-client.noarch: W: no-documentation maybe the should be a README or something in the client package too. Is it on purpose that the license is GPLv2 (GPL2 only) and not GPLv2+ (GPL2 or later), the later is easier to work with. what about a COPYING gpl file ??? (shouldn't there be one in a GPL package ???) you should use 'Requires: yum-utils >= 1.1.7' in the server package because you are using 'repoquery --repofrompath=' this is first available in yum-utils-1.1.7. MUST: * package is named appropriately * it is legal for Fedora to distribute this * license field matches the actual license. * license is open source-compatible. * specfile name matches %{name} ? verify source and patches (md5sum matches upstream, know what the patches do) No upstream tarball to match, SRPM is upstream source. ? summary and description fine Maybe copy the main summary + description to the server package because because no binary bodhi packages is build, so the description ends up nowhere rpm -qi bodhi-server will not show much info. * correct buildroot * %{?dist} is used X license text included in package and marked with %doc * package meets FHS (http://www.pathname.com/fhs/) * changelog format fine * Packager tag not used * Vendor tag not used * Distribution tag not used * License used and not Copyright * Summary tag does not end in a period * specfile is legible * package successfully compiles and builds on at least x86 ? BuildRequires are proper See earlier comment. * make sure lines are <= 80 characters * specfile written in American English * no -doc sub-package necessary * no libraries * no rpath * no config files * not a GUI app * no -devel sub-package necessary * macros used appropriately and consistently * no %makeinstall * install section must begin with rm -rf $RPM_BUILD_ROOT or %{buildroot} * no locale data * no cp usage so no need to worry about -p * split Requires(pre,post) into two separate lines * package not relocatable * package contains code * package owns all directories and files * no %files duplicates ? file permissions fine See earlier comments. * %defattrs present ( %defattr(-, root, root, -)) * %clean present * %doc files do not affect runtime * verify the final provides and requires of the binary RPMs $ rpm -q -R -p rpmbuild/RPMS/noarch/bodhi-client-0.2.0-1.fc7.noarch.rpm /usr/bin/python rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 $ rpm -q -R -p rpmbuild/RPMS/noarch/bodhi-server-0.2.0-1.fc7.noarch.rpm /usr/bin/python TurboGears createrepo intltool mash python(abi) = 2.5 python-TurboMail rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 yum-utils $ rpm -q --provides -p rpmbuild/RPMS/noarch/bodhi-client-0.2.0-1.fc7.noarch.rpm bodhi-client = 0.2.0-1.fc7 $ rpm -q --provides -p rpmbuild/RPMS/noarch/bodhi-server-0.2.0-1.fc7.noarch.rpm bodhi-server = 0.2.0-1.fc7 * run rpmlint on the binary RPMs - see previous bug comments SHOULD: x package should include license text in the package and mark it with %doc * package should build on i386 ? package should build in mock - I haven't tried, but I don't think it'll be a problem when installing the bodhi-server packages everything goes into ?python_sitelib/bodhi is this the right way to do it ?? the bodhi/static should go into /usr/share/bodhi/static and bodhi/config should go into /etc/bodhi ( and maybe add some example cfg files) start-bodhi dev.cfg, should start bodhi and look for dev.cfg in /etc/bodhi/, ~/.bodhi/ or in current dir. the bodhi/tests should be exclude in the server package, unit tests don't make much sense in the binary packages (IMHO). the bodhi tools should goto the /usr/share/bodhi or be excluded from the server package is not needed. You might want to look at these pages: https://fedoraproject.org/wiki/PackagingDrafts/TGApps http://www.advogato.org/person/badger/diary/46.html They're non-binding at this point.. Just some things that I thought about and arrived at when packaging the pkgdb. (In reply to comment #8) > You might want to look at these pages: > > https://fedoraproject.org/wiki/PackagingDrafts/TGApps > http://www.advogato.org/person/badger/diary/46.html > > They're non-binding at this point.. Just some things that I thought about and > arrived at when packaging the pkgdb. Looks very good to me, it makes it looks much better than all the code located under python site libs. http://lmacken.fedorapeople.org/rpms/bodhi-0.3.2-1.fc8.src.rpm http://lmacken.fedorapeople.org/rpms/bodhi.spec • Added COPYING file • bodhi-server now installs to /usr/share/bodhi • configuration lives in /etc/bodhi.cfg • unittests are no longer included • Requires: yum-utils >= 1.1.7 X. Could not rebuild the srpm on a system without TurboGear installed (used by setup.py) so TurboGear should be a BuildRequires. X. Rpmlint is not silent rpmbuild/RPMS/noarch/bodhi-server-0.3.2-1.fc8.noarch.rpm TurboGearrpmbuild/RPMS/noarch/bodhi-server-0.3.2-1.fc8.noarch.rpm [tim@localhost ~]$ rpmlint rpmbuild/RPMS/noarch/bodhi-server-0.3.2-1.fc8.noarch.rpm bodhi-server.noarch: E: non-executable-script /usr/share/bodhi/bodhi/tools/dev_init.py 0644 bodhi-server.noarch: E: non-executable-script /usr/share/bodhi/bodhi/tools/test-bodhi.py 0644 bodhi-server.noarch: E: non-executable-script /usr/share/bodhi/bodhi/tools/pickledb.py 0644 bodhi-server.noarch: E: non-executable-script /usr/share/bodhi/bodhi/tools/bodhi-client.py 0644 bodhi-server.noarch: E: non-executable-script /usr/share/bodhi/bodhi/tools/init.py 0644 can be fixed by adding chmod +x $RPM_BUILD_ROOT/%{_datadir}/%{name}/bodhi/tools/*.py to %install * rpmlint silent on SRPM & bodhi-client. If these issues are fixed, i will approve it. http://lmacken.fedorapeople.org/rpms/bodhi-0.3.2-2.fc8.src.rpm http://lmacken.fedorapeople.org/rpms/bodhi.spec * Thu Oct 18 2007 Luke Macken <lmacken> - 0.3.2-2 - Add TurboGears to BuildRequires - Make some scripts executable to silence rpmlint Looks good. * rpmlint silent APPROVED. New Package CVS Request ======================= Package Name: bodhi Short Description: A modular framework that facilitates publishing software updates Owners: lmacken Branches: EL-5 FC-6 F-7 F-8 InitialCC: toshio, timlau Cvsextras Commits: yes cvs done. Imported into cvs. I'm going to do some testing and make sure the client actually works with our production instance before I build. Thanks! |