1- # frozen_string_literal: true
2-
3- source 'https://rubygems.org'
4-
5- # Specify your gem's dependencies in pwsh.gemspec
6- gemspec
1+ source ENV [ 'GEM_SOURCE' ] || 'https://rubygems.org'
72
83def location_for ( place_or_version , fake_version = nil )
94 git_url_regex = %r{\A (?<url>(https?|git)[:@][^#]*)(#(?<branch>.*))?}
@@ -19,24 +14,61 @@ def location_for(place_or_version, fake_version = nil)
1914end
2015
2116group :development do
22- gem 'faraday-retry'
23- gem 'fuubar'
24- gem 'pry'
25- gem 'pry-stack_explorer'
26- gem 'yard'
17+ gem "json" , '= 2.1.0' , require : false if Gem ::Requirement . create ( [ '>= 2.5.0' , '< 2.7.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
18+ gem "json" , '= 2.3.0' , require : false if Gem ::Requirement . create ( [ '>= 2.7.0' , '< 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
19+ gem "json" , '= 2.5.1' , require : false if Gem ::Requirement . create ( [ '>= 3.0.0' , '< 3.0.5' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
20+ gem "json" , '= 2.6.1' , require : false if Gem ::Requirement . create ( [ '>= 3.1.0' , '< 3.1.3' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
21+ gem "json" , '= 2.6.3' , require : false if Gem ::Requirement . create ( [ '>= 3.2.0' , '< 4.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
22+ gem "racc" , '~> 1.4.0' , require : false if Gem ::Requirement . create ( [ '>= 2.7.0' , '< 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
23+ gem "voxpupuli-puppet-lint-plugins" , '~> 5.0' , require : false
24+ gem "facterdb" , '~> 1.18' , require : false
25+ gem "metadata-json-lint" , '~> 3.0' , require : false
26+ gem "puppetlabs_spec_helper" , '~> 6.0' , require : false
27+ gem "rspec-puppet-facts" , '~> 2.0' , require : false
28+ gem "codecov" , '~> 0.2' , require : false
29+ gem "dependency_checker" , '~> 1.0.0' , require : false
30+ gem "parallel_tests" , '= 3.12.1' , require : false
31+ gem "pry" , '~> 0.10' , require : false
32+ gem "simplecov-console" , '~> 0.5' , require : false
33+ gem "puppet-debugger" , '~> 1.0' , require : false
34+ gem "rubocop" , '= 1.48.1' , require : false
35+ gem "rubocop-performance" , '= 1.16.0' , require : false
36+ gem "rubocop-rspec" , '= 2.19.0' , require : false
37+ gem "puppet-strings" , '~> 4.0' , require : false
38+ gem "rb-readline" , '= 0.5.5' , require : false , platforms : [ :mswin , :mingw , :x64_mingw ]
39+ end
40+ group :system_tests do
41+ gem "puppet_litmus" , '~> 1.0' , require : false , platforms : [ :ruby , :x64_mingw ]
42+ gem "serverspec" , '~> 2.41' , require : false
2743end
2844
29- group :test do
30- gem 'puppet' , *location_for ( ENV [ 'PUPPET_GEM_VERSION' ] )
31-
32- gem 'ffi'
33- gem 'rake' , '~> 13.0'
34- gem 'rspec' , '~> 3.0'
35- gem 'rspec-collection_matchers' , '~> 1.0'
36- gem 'rspec-its' , '~> 1.0'
37- gem 'rubocop' , '~> 1.48' , require : false
38- gem 'rubocop-performance' , '~> 1.16' , require : false
39- gem 'rubocop-rspec' , '~> 2.19' , require : false
40- gem 'simplecov' , require : false
45+ puppet_version = ENV [ 'PUPPET_GEM_VERSION' ]
46+ facter_version = ENV [ 'FACTER_GEM_VERSION' ]
47+ hiera_version = ENV [ 'HIERA_GEM_VERSION' ]
48+
49+ gems = { }
50+
51+ gems [ 'puppet' ] = location_for ( puppet_version )
52+
53+ # If facter or hiera versions have been specified via the environment
54+ # variables
55+
56+ gems [ 'facter' ] = location_for ( facter_version ) if facter_version
57+ gems [ 'hiera' ] = location_for ( hiera_version ) if hiera_version
58+
59+ gems . each do |gem_name , gem_params |
60+ gem gem_name , *gem_params
4161end
4262
63+ # Evaluate Gemfile.local and ~/.gemfile if they exist
64+ extra_gemfiles = [
65+ "#{ __FILE__ } .local" ,
66+ File . join ( Dir . home , '.gemfile' ) ,
67+ ]
68+
69+ extra_gemfiles . each do |gemfile |
70+ if File . file? ( gemfile ) && File . readable? ( gemfile )
71+ eval ( File . read ( gemfile ) , binding )
72+ end
73+ end
74+ # vim: syntax=ruby
0 commit comments