[katello-devel] Bundler vs rpm-gems
Dmitri Dolguikh
dmitri at redhat.com
Wed Aug 22 12:04:20 UTC 2012
On 22/08/12 12:29 PM, Ivan Nečas wrote:
> On 08/22/2012 10:39 AM, Petr Chalupa wrote:
>> Hi,
>>
>> as Ivan and Lukas said on mail-list, I had some ideas how to solve
>> our bundler/rpm issues. Then I had discussion with Ivan and Mirek and
>> here is the proposed solution.
>>
>> == 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.
>>
>> == 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.
>>
>> 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).
>>
>> 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'm all for this change. This is a good compromise for yum-based
> development vs. rest of the world, as it brings the good parts from
> both worlds (stability of production dependencies vs. comfort of using
> other gems for easier development). The main problem with the custom
> gem repo was the way it was prepared, but that's not a reason why not
> to use it. I vote for every improvement that doesn't prevent me
> developing on the same stack we're running and supporting for production.
The main problem with custom gem repo is that it not very useful outside
of rhel/fedora world at best, and can be an actual downside. I know that
foreman users/devs running on debian use debian-provided dependencies.
How does a custom repo help them?
What if someone wants to use katello as part of their project, how do
custom dependencies help them?
-d
> It's also the fastest way to get a development environment on
> yum-based machine: katello-install, bundle install. Ready to go.
>
> -- Ivan
>>
>> Petr
>>
>> [1] https://gist.github.com/2875212
>> [2] http://repos.fedorapeople.org/repos/katello/gems/
>>
>> _______________________________________________
>> katello-devel mailing list
>> katello-devel at redhat.com
>> https://www.redhat.com/mailman/listinfo/katello-devel
>
>
More information about the katello-devel
mailing list