[katello-devel] Bundler vs rpm-gems

Lukas Zapletal lzap at redhat.com
Wed Aug 22 13:03:14 UTC 2012


On Wed, Aug 22, 2012 at 10:39:18AM +0200, Petr Chalupa wrote:
> == Requirements
> 
> When installing on fedora/rhel in production. Do not mess with the
> production setup, rpm gems are used, 'bundle install' wont install
> anything else.
> 
> When installing on fedora/rhel in development. 'bundle install'
> prefers rpm-gems even if there is a newer gem in our gem-repo [2].
> Additional development dependencies are installed.
> 
> When installing on any other system (Debian, Ubuntu, Mac, ...) in
> development. 'bundle install' installs the same versions of gems as
> would be installed on fedora. Optionally (at least made it possible
> in the future) 'bundle install' installs not only the same versions
> but also gems including security fixes included in rpm-gems.
>

Question - the very same version from which fedora version?

I would like to see four gem repos instead of one. Fedora 16/17 (two
last stable versions) and RHEL6. Plus one repo with development gems
(versions does not matter here - we do not deploy them to the users).
Then we would have something like:

source 'http://fedorapeople.org/groups/katello/gems/f16'
#source 'http://fedorapeople.org/groups/katello/gems/f17'
#source 'http://fedorapeople.org/groups/katello/gems/el6'
source 'http://fedorapeople.org/groups/katello/gems/dev'

Everyone could uncomment the version that should be used.

> == Proposal
> 
> I'll add monkey patch to katello/master for bundler which will
> ensure that rpm-gems are preferred (even if they are older than gems
> in a gem-repo). It's based on bkabrda's patch [1].
> 
> I'll ensure that our gem repo [2] contains all gems needed for
> katello development (some are still missing). This enables katello
> (rails app) to be installed on any system without rubygems.org.
>

How are you going to ensure this? This MUST be some kind of automatic
process. I am for unpacking gems from our RPMs with a script or
something.

> I would like to work on this in the next iteration. Also I would
> like to explore how difficult would be to create gem versions with
> security patches (which is important for non fedora development -
> me).

Please do not try to solve security patches - it's out of the scope
(another sub-thread started in regard to this topic). We simply do not
support running Katello on pure gems.

> We also discussed it would be nice to move our gem-repo to github a
> publish it on pages.github. The repo would be more visible. It would
> allow us to use pull-requests for tracking new gem-dependencies. It
> would be on one place.

I strongly suggest our Fedorahosted shared account. Everyone from
katello-git FAC group has read/write access there, no limits and also
everyone with FAC has shell on fedorapeople.org with cron.

Can you describe in more detail how are you going to achieve all of the
above?

-- 
Later,

 Lukas "lzap" Zapletal
 #katello #systemengine




More information about the katello-devel mailing list