No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
Installs gem dependencies for a Rails 2 project where `rake gems:install` fails. I.e.: breaks the circular dependencies of requiring Rails and anything your vendored gems/plugins require in order to install these requirements.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 0.9.8
>= 1.2.9
 Project Readme

Overview of rails_gem_install¶ ↑

Installs the gem dependencies of your Rails 2 project where rake gems:install fails.

Using rake gems:install has a number of problems:

  • It depends on Rails. You have to manually install Rails before you can use rake gems:install

  • It depends on your Rails environment. This can create a circular dependency where some file (particularly vendored plugins/gems) can require a gem to be loaded before the task to install it runs.

  • Most of the time it just doesn’t work. Adding a new config.gem requirement, then running rake gems:install will fail with a complaint that it is missing the gem you are expecting it to install for you.

This tool aims to solve these problems by providing a tool that is NOT dependent on Rails or the Rail apps’s environment in order to determine and install the dependencies.

For more background and a brief description of how it works, check out the blog post at sleeplesscoding.blogspot.com/2010/07/install-rails-apps-dependencies-where.html

Installation¶ ↑

gem install rails_gem_install

Usage¶ ↑

IMPORTANT: You must run this command from the RAILS_ROOT of your Rails 2 app.

cd my_rails_app
RAILS_ENV=production rails_gem_install

This will install all the gem dependencies for running your Rails app under the specified environment, so you may want to do this multiple times for multiple environments. For example, you may want to do this using your test environment too, if you have additional config.gem configurations in config/environments/test.rb.

Note that this will run gem install commands, so run as root/sudo if you want them to be installed that way.

Caveats¶ ↑

This has only been tested for a Rails 2.3.5 project where there was no pre-existing Rails installation or other gems, and incrementally after that as the config.gem configuration changes. There may be some corner-case dependencies I may have missed.

Credits¶ ↑

Inspired by this gist from troelskn.

Note on Patches/Pull Requests¶ ↑

  • Fork the project.

  • Make your feature addition or bug fix.

  • Add tests for it. This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2010 Scott W. Bradley. See LICENSE for details.