Add ability to use puppet from git via bundler
Without this patch the Gemfile can only satisfy dependencies using officially release gem versions. This is a problem because we want to test stdlib against the latest HEAD of the puppet git repository. This patch addresses the problem by copying over the location_for method from the Puppet Gemfile, which will parse out git://, file:// or Gem version specifications. This, in turn, allows jobs to be configured to run with different dependency integrations.
This commit is contained in:
parent
2e2830deda
commit
9c5805f26a
1 changed files with 12 additions and 1 deletions
13
Gemfile
13
Gemfile
|
@ -1,5 +1,16 @@
|
|||
source "https://rubygems.org"
|
||||
|
||||
def location_for(place, fake_version = nil)
|
||||
mdata = /^(git:[^#]*)#(.*)/.match(place)
|
||||
if mdata
|
||||
[fake_version, { :git => mdata[1], :branch => mdata[2], :require => false }].compact
|
||||
elsif place =~ /^file:\/\/(.*)/
|
||||
['>= 0', { :path => File.expand_path(mdata[1]), :require => false }]
|
||||
else
|
||||
[place, { :require => false }]
|
||||
end
|
||||
end
|
||||
|
||||
group :development do
|
||||
gem 'watchr'
|
||||
end
|
||||
|
@ -14,7 +25,7 @@ group :development, :test do
|
|||
end
|
||||
|
||||
if puppetversion = ENV['PUPPET_GEM_VERSION']
|
||||
gem 'puppet', puppetversion, :require => false
|
||||
gem 'puppet', *location_for(puppetversion)
|
||||
else
|
||||
gem 'puppet', :require => false
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue