From: Alice Nodelman <alice@puppetlabs.com>
Date: Tue, 24 Mar 2015 18:49:20 +0000 (-0700)
Subject: (BKR-147) add Gemfile setting for BEAKER_VERSION for puppet...
X-Git-Tag: 1.5.0~3^2
X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=41b536742f15d9ba126bd3c0c30dbfb860362cfb;p=puppet-modules%2Fpuppetlabs-firewall.git

(BKR-147) add Gemfile setting for BEAKER_VERSION for puppet...

puppetdb, etc

- support for BEAKER_VERSION and BEAKER_RSPEC_VERSION in gemfile
---

diff --git a/Gemfile b/Gemfile
index 62c5693..e1ae0fa 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,5 +1,15 @@
 source ENV['GEM_SOURCE'] || "https://rubygems.org"
 
+def location_for(place, fake_version = nil)
+  if place =~ /^(git:[^#]*)#(.*)/
+    [fake_version, { :git => $1, :branch => $2, :require => false }].compact
+  elsif place =~ /^file:\/\/(.*)/
+    ['>= 0', { :path => File.expand_path($1), :require => false }]
+  else
+    [place, { :require => false }]
+  end
+end
+
 group :development, :unit_tests do
   gem 'rake',                    :require => false
   gem 'rspec-core', '3.1.7',     :require => false
@@ -11,8 +21,17 @@ group :development, :unit_tests do
   gem 'json',                    :require => false
 end
 
+beaker_version = ENV['BEAKER_VERSION']
+beaker_rspec_version = ENV['BEAKER_RSPEC_VERSION']
 group :system_tests do
-  gem 'beaker-rspec',  :require => false
+  if beaker_version
+    gem 'beaker', *location_for(beaker_version)
+  end
+  if beaker_rspec_version
+    gem 'beaker-rspec', *location_for(beaker_rspec_version)
+  else
+    gem 'beaker-rspec',  :require => false
+  end
   gem 'serverspec',    :require => false
 end