Spec: http://mo.morsi.org/files/aeolus/rubygem-aeolus-cli.spec SRPM: http://mo.morsi.org/files/aeolus/rubygem-aeolus-cli-0.0.1-1.fc15.src.rpm Summary: Commandline interface for working with the Aeolus cloud suite
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
Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=3201364
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.