| Summary: | Review Request: rubygem-aeolus-image - Commandline interface for working with the Aeolus cloud suite | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Mo Morsi <mmorsi> |
| Component: | Package Review | Assignee: | Mo Morsi <mmorsi> |
| Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | clalance, markmc, notting, package-review, stanislav.polasek |
| Target Milestone: | --- | Flags: | markmc:
fedora-review+
gwync: fedora-cvs+ |
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2011-07-25 12:20:22 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Description
Mo Morsi
2011-07-13 16:03:07 UTC
I'm going to take this one, but before we do anything with it, I think I'm going to rename the upstream rubygem to aeolus-image. It just makes more sense that way. I'll come back around to this once that is done. Rebuilt the rpms w/ the changed name and to comply to more Fedora guidelines Spec: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image.spec SRPM: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image-0.0.1-2.fc15.src.rpm Changes to the specfile submitted to list here https://fedorahosted.org/pipermail/aeolus-devel/2011-July/003182.html The main issue I see is that you're packaging a snapshot of upstream's 0.0.1, but the package doesn't include the git commit ID in the release number rpmlint output: $> rpmlint rubygem-aeolus-image.spec rubygem-aeolus-image.spec:36: W: unversioned-explicit-obsoletes rubygem-aeolus-cli rubygem-aeolus-image.spec:37: W: unversioned-explicit-provides rubygem(aeolus-cli) 0 packages and 1 specfiles checked; 0 errors, 2 warnings. $> $ rpmlint rubygem-aeolus-image-0.0.1-2.fc15.src.rpm rubygem-aeolus-image.src: W: spelling-error Summary(en_US) Commandline -> Command line, Command-line, Commanding rubygem-aeolus-image.src:36: W: unversioned-explicit-obsoletes rubygem-aeolus-cli rubygem-aeolus-image.src:37: W: unversioned-explicit-provides rubygem(aeolus-cli) 1 packages and 0 specfiles checked; 0 errors, 3 warnings. $> $ rpmlint rubygem-aeolus-image-0.0.1-2.fc14.noarch.rpm rubygem-aeolus-image.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/PushCommand/combo_implemented%3f-i.yaml %3f rubygem-aeolus-image.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/BuildCommand/combo_implemented%3f-i.yaml %3f rubygem-aeolus-image.noarch: E: non-standard-executable-perm /usr/lib/ruby/gems/1.8/gems/aeolus-image-0.0.1/bin/aeolus-image 0775L rubygem-aeolus-image.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/BaseCommand/is_file%3f-i.yaml %3f rubygem-aeolus-image.noarch: W: non-standard-dir-in-usr man 1 packages and 0 specfiles checked; 1 errors, 4 warnings. Review comments: - I really don't think we should worry about the aeolus-cli renaming. The cli pkg wasn't part of any upstream release or in Fedora, so I'd just ignore its existence If you still want to obsolete it, the obsoletes and provides should be versioned according to: http://fedoraproject.org/wiki/Packaging:Guidelines#Renaming.2FReplacing_Existing_Packages i.e. Provides: rubygem(aeolus-cli) = %{version}-%{release} Obsoletes: rubygem(aeolus-cli) < 0.0.1 - "Command-line" in Summary instead of "Commandline" - You want %{mandir}/* not %{mandir} - the pkg shouldn't own /usr/man/man1 - Also, it's /usr/share/man not /usr/man - in fact, use the %{_mandir} macro - I'm not sure what you're doing here: mkdir -p %{buildroot}/%{_bindir} mv %{buildroot}%{gemdir}/bin/* %{buildroot}/%{_bindir} find %{buildroot}%{geminstdir}/bin -type f | xargs chmod a+x rmdir %{buildroot}%{gemdir}/bin Are you chmod-ing the wrong file here? Perhaps you meant: mkdir -p %{buildroot}/%{_bindir} mv %{buildroot}%{gemdir}/bin/* %{buildroot}/%{_bindir} rmdir %{buildroot}%{gemdir}/bin rm -rf %{buildroot}%{geminstdir}/bin This fixes the non-standard-exuctable-perms error too btw (In reply to comment #4) > - I'm not sure what you're doing here: > > mkdir -p %{buildroot}/%{_bindir} > mv %{buildroot}%{gemdir}/bin/* %{buildroot}/%{_bindir} > find %{buildroot}%{geminstdir}/bin -type f | xargs chmod a+x > rmdir %{buildroot}%{gemdir}/bin > > Are you chmod-ing the wrong file here? > > Perhaps you meant: > > mkdir -p %{buildroot}/%{_bindir} > mv %{buildroot}%{gemdir}/bin/* %{buildroot}/%{_bindir} > rmdir %{buildroot}%{gemdir}/bin > rm -rf %{buildroot}%{geminstdir}/bin > > This fixes the non-standard-exuctable-perms error too btw Doh, silly me. Maybe all you need is: find %{buildroot}%{geminstdir}/bin -type f | xargs chmod g-w (In reply to comment #4) > The main issue I see is that you're packaging a snapshot of upstream's 0.0.1, > but the package doesn't include the git commit ID in the release number Looks like this will be resolved by a release as part of Aeolus's 0.3.0 release this week: https://fedorahosted.org/pipermail/aeolus-devel/2011-July/003225.html https://fedorahosted.org/pipermail/aeolus-devel/2011-July/003226.html Addressed all feedback. rpmlint is now quiet. Removed obsoletes(aeolus-cli). Fixed the man pages file ownership. Will use the released version when that is pushed to the official repo. Spec: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image.spec SRPM: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image-0.0.1-3.fc15.src.rpm Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3215809 Looks great to me now, still some whining from rpmlint: $ rpmlint rubygem-aeolus-image-0.0.1-3.fc14.noarch.rpm rubygem-aeolus-image.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/PushCommand/combo_implemented%3f-i.yaml %3f rubygem-aeolus-image.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/BuildCommand/combo_implemented%3f-i.yaml %3f rubygem-aeolus-image.noarch: W: unexpanded-macro /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/BaseCommand/is_file%3f-i.yaml %3f 1 packages and 0 specfiles checked; 0 errors, 3 warnings. But that looks like a false positive to me - %3f isn't an RPM macro Also, we need this: - Requires: rubygem(image_factory_console) >= 0.4.0 - Requires: rubygem(imagefactory-console) >= 0.4.0 Finally, there's an upstream 0.0.1 release now. We should use that from an official URL rather than building our own gem (In reply to comment #8) > Looks great to me now, still some whining from rpmlint: > > $ rpmlint rubygem-aeolus-image-0.0.1-3.fc14.noarch.rpm > rubygem-aeolus-image.noarch: W: unexpanded-macro > /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/PushCommand/combo_implemented%3f-i.yaml > %3f > rubygem-aeolus-image.noarch: W: unexpanded-macro > /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/BuildCommand/combo_implemented%3f-i.yaml > %3f > rubygem-aeolus-image.noarch: W: unexpanded-macro > /usr/lib/ruby/gems/1.8/doc/aeolus-image-0.0.1/ri/Aeolus/Image/BaseCommand/is_file%3f-i.yaml > %3f > 1 packages and 0 specfiles checked; 0 errors, 3 warnings. > > But that looks like a false positive to me - %3f isn't an RPM macro This occurs on every ruby package that includes ri documentation and can safely be ignored. > > Also, we need this: > > - Requires: rubygem(image_factory_console) >= 0.4.0 > - Requires: rubygem(imagefactory-console) >= 0.4.0 Done > > Finally, there's an upstream 0.0.1 release now. We should use that from an > official URL rather than building our own gem Done Updated: Spec: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image.spec SRPM: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image-0.0.1-4.fc15.src.rpm Sorry to drag this out further, but:
1) The Source URL doesn't seem to work. It does seem to work after you follow
this:
http://github.com/aeolusproject/aeolus-image/tarball/v0.0.1
but then it gets deleted after a while
2) "The Source of the package must be the full URL to the released Gem archive"
http://fedoraproject.org/wiki/Packaging:Ruby#Ruby_Gems
I had expected we'd build a gem from the v0.0.1 tag in git, upload it
somewhere (fedorapeople perhaps) and use that as the Source URL
3) The License is "GPLv2+ or Ruby" - should just be GPLv2+, right?
Mo, see https://fedorahosted.org/pipermail/aeolus-devel/2011-July/003431.html You want to use http://repos.fedorapeople.org/repos/aeolus/aeolus-image/0.0.1/gem/aeolus-image-0.0.1.gem OK updated Source0 to reflect released gem (we should push this to rubygems.org) Updated: Spec: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image.spec SRPM: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image-0.0.1-4.fc15.src.rpm (In reply to comment #12) > OK updated Source0 to reflect released gem (we should push this to > rubygems.org) Could you give me some pointers on aeolus-devel on how to do the rubygems.org piece? Thanks > Updated: > Spec: http://mo.morsi.org/files/aeolus/rubygem-aeolus-image.spec > SRPM: > http://mo.morsi.org/files/aeolus/rubygem-aeolus-image-0.0.1-4.fc15.src.rpm Yay! :) New Package SCM Request ======================= Package Name: rubygem-aeolus-image Short Description: Commandline interface for working with the Aeolus cloud suite Owners: mmorsi Sorry, didn't copy all of the request template New Package SCM Request ======================= Package Name: rubygem-aeolus-image Short Description: Commandline interface for working with the Aeolus cloud suite Owners: mmorsi Branches: InitialCC: Git done (by process-git-requests). Pushed to rawhide and built. |