Using Bundler Groups on Heroku
February 15, 2011 by David Baliles
Bundler groups are commonly used to specify which dependencies of your application are needed in a given environment. You may have something like this in your Gemfile:
group :test do gem "rspec" end
"test" group in this case allows you to specify the gems that are needed to test your application.
Since you won’t need these gems in production, you can speed up installation by ignoring the
"test" group. Bundler provides this ability through the
bundle install --without test
You can currently access this functionality on Heroku by setting the
BUNDLE_WITHOUT config var in your application.
Starting today we are going to default
"development:test" on all new applications.
If necessary, you can change this value for your application by changing the
BUNDLE_WITHOUT config var:
heroku config:add BUNDLE_WITHOUT="foo:bar"
Existing applications will not be affected by this change to the default. If you have an existing application and would like to take advantage of this feature, simply set the
BUNDLE_WITHOUT config var to an appropriate value.
We hope that this new default will help to reduce the deploy time of your Heroku applications. Please give it a try and let us know your thoughts!