MY team and I are working on creating gem libraries that have various external dependencies from Rubygems. We are also using a continuous integration server to build up these gems and publish them to an internal gem server as we deliver them to SCM. One of the problems we hit from time to time is when a gem updates one of its external gem dependencies, e.g. adding a dependency on the rest-client gem from rubygems.org.
I was wondering what is the best method to have a continuous integration update itself by monitoring changes either a .gemspec of Gemfile? Is there anything special I can do with the help of ruby gems or bundler, or should I just add some special logic to my build script to monitor dependency changes and make an external call to gem install?
Thanks!
Bundler should solve all your problems, just use it the same way you’d use it in a deployment scenario. That basically means doing
bundle installas a part of your test build setup. Check out http://gembundler.com/deploying.html for more on that topic.