[katello-devel] bundler woes....

Justin Sherrill jsherril at redhat.com
Tue Nov 6 01:08:05 UTC 2012


So in our Pulpv2 branch we are hitting some bundler issues with regard 
to running from an rpm install.

Issues at hand:

1.  Currently the rpm spec file removes all development gems from our 
Gemfile.  This causes an issue due to the fact that
    a)  the test.rake rake task now references and requires Minitest 
(even when loaded, not executed, via the rake command)
    b) We no longer exclude these test rake files due to the  -devel  
and -devel-test packages
    c)  We run  'rake apipie:static'   which scans all rake tasks

2.  My initial thought was to change the rpm spec to not delete all 
development and test gems from the Gemfile.  However, this caused 
additional problems.   The 'bundle install' as part of katello-configure 
now needs all dev and test gems installed in order to generate the 
Gemfile.lock file.   As you can imagine this fails, since all of these 
extra rpms are not installed.  (You also cannot use --without 
group1:group2  in conjunction with --local for 'bundle install')

3.  My second thought was to try to re-use one of the prebuilt 
Gemfile.lock files for f16.  This turned out to be out of date though, 
as some rpms had been updated in f16 (something that we do not have 
control over).   We don't currently have a way to mass-regenerate these 
either for f16, f17, rhel 6 (something we really need to properly use 
them going forward).

So in the end I am not able to solve our issue.  I've temporarily 
changed the spec to not include the test.rake file (which i don't want 
to do long term).  It seems our bundler issues are not solved.

1) After reading through some of the previous bundler discussions, I 
found this PR: https://github.com/Katello/katello/pull/526/files

This doesn't seem to be integrated into our build process at all 
though?    Is there any plan on doing that? This seems to be what aeolus 
is doing and is probably the way to go.

Other possible solutions (that i'm not as big of a fan of):

2) Use two gemfile files (one for production deployment and one for 
testing/development)

3) Use the f16/f17/rhel6 gem files and have some process to keep them up 
to date.

Thoughts?

-Justin




More information about the katello-devel mailing list