While hosting the Ruby application, Jelastic Cloud provides you with an automatic native dependencies resolving. Dependency management is provided by Bundler via tracking and installing the exact gems and versions that are needed. You only need to specify the list of required gems in Gemfile and Bundle and this will resolve all dependencies.
By default Ruby in Jelastic comes with a list of the most popular/widespread Ruby gems for all supported Ruby versions. They are cached locally in each Ruby container for fast environment creation.
When you deploy your application, Bundler performs dependency resolving by searching gems at http://rubygems.org/ and installing the latest version of all gems if needed.
If you use a non strict versions declaration in your Gemfile (e.g. gem version will have to be greater than specific “jquery-rails”, “~> 2.0.2”) - Bundler will download and install the latest version of the corresponding gem on each deployment.
If your application uses any special (non-public) dependency, you need to specify its repository URL in Gemfile and Bundler will also download and install this gem.
Bundler performs dependency resolving in the following cases:
- Deploying application
- Switching between Ruby versions
- Changing deployment type