Description
Our multiverse suites use a nil
gem version value to specify "no constraint" and have Bundler fetch the latest stable version. So for the yojimbo
gem as an example, the following Gemfile.0
file would be created on disk by the processing of the Envfile
file:
gem 'yojimbo'
Bundler will determine the latest stable version of the yojimbo
gem and write out a Gemfile.0.lock
file that looks like this:
GEM
remote: https://rubygems.org/
specs:
yojimbo (1.9.61)
mifune (>= 1.9.20, < 1.9.98)
So even though a version constraint for the yojimbo
gem is not stored in the source code and will not be known until the CI system runs through the multiverse test suite, Bundler does make a note of the exact version used in the .lock
file.
Parsing out and storing the exact versions of gems that the agent has been tested against could provide some useful information.