@@ -14,22 +14,22 @@ def location_for(place_or_version, fake_version = nil)
1414end
1515
1616group :development do
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 ) )
2017 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 ) )
2118 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 ) )
2219 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 "deep_merge" , '~> 1.0' , require : false
20+ gem "deep_merge" , '~> 1.2.2' , require : false
2421 gem "voxpupuli-puppet-lint-plugins" , '~> 5.0' , require : false
25- gem "facterdb" , '~> 1.18' , require : false
22+ gem "facterdb" , '~> 2.1' , require : false if Gem ::Requirement . create ( [ '< 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
23+ gem "facterdb" , '~> 3.0' , require : false if Gem ::Requirement . create ( [ '>= 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
2624 gem "metadata-json-lint" , '~> 4.0' , require : false
27- gem "rspec-puppet-facts" , '~> 3.0' , require : false
25+ gem "json-schema" , '< 5.1.1' , require : false
26+ gem "rspec-puppet-facts" , '~> 4.0' , require : false if Gem ::Requirement . create ( [ '< 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
27+ gem "rspec-puppet-facts" , '~> 5.0' , require : false if Gem ::Requirement . create ( [ '>= 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
2828 gem "dependency_checker" , '~> 1.0.0' , require : false
2929 gem "parallel_tests" , '= 3.12.1' , require : false
3030 gem "pry" , '~> 0.10' , require : false
3131 gem "simplecov-console" , '~> 0.9' , require : false
32- gem "puppet-debugger" , '~> 1.0 ' , require : false
32+ gem "puppet-debugger" , '~> 1.6 ' , require : false
3333 gem "rubocop" , '~> 1.50.0' , require : false
3434 gem "rubocop-performance" , '= 1.16.0' , require : false
3535 gem "rubocop-rspec" , '= 2.19.0' , require : false
@@ -49,26 +49,31 @@ group :development do
4949end
5050group :development , :release_prep do
5151 gem "puppet-strings" , '~> 4.0' , require : false
52- gem "puppetlabs_spec_helper" , '~> 7.0' , require : false
52+ gem "puppetlabs_spec_helper" , '~> 8.0' , require : false
53+ gem "puppet-blacksmith" , '~> 7.0' , require : false
5354end
5455group :system_tests do
56+ gem "puppet_litmus" , '~> 1.0' , require : false , platforms : [ :ruby , :x64_mingw ]
5557 gem "CFPropertyList" , '< 3.0.7' , require : false , platforms : [ :mswin , :mingw , :x64_mingw ]
5658 gem "serverspec" , '~> 2.41' , require : false
5759 gem "voxpupuli-acceptance" , '~> 3' , require : false
5860end
5961
60- puppet_version = ENV [ 'PUPPET_GEM_VERSION' ]
61- facter_version = ENV [ 'FACTER_GEM_VERSION' ]
62- hiera_version = ENV [ 'HIERA_GEM_VERSION' ]
63-
6462gems = { }
63+ puppet_version = ENV . fetch ( 'PUPPET_GEM_VERSION' , nil )
64+ facter_version = ENV . fetch ( 'FACTER_GEM_VERSION' , nil )
65+ hiera_version = ENV . fetch ( 'HIERA_GEM_VERSION' , nil )
6566
66- gems [ 'puppet' ] = location_for ( puppet_version )
67-
68- # If facter or hiera versions have been specified via the environment
69- # variables
67+ # If PUPPET_FORGE_TOKEN is set then use authenticated source for both puppet and facter, since facter is a transitive dependency of puppet
68+ # Otherwise, do as before and use location_for to fetch gems from the default source
69+ if !ENV [ 'PUPPET_FORGE_TOKEN' ] . to_s . empty?
70+ gems [ 'puppet' ] = [ '~> 8.11' , { require : false , source : 'https://rubygems-puppetcore.puppet.com' } ]
71+ gems [ 'facter' ] = [ '~> 4.11' , { require : false , source : 'https://rubygems-puppetcore.puppet.com' } ]
72+ else
73+ gems [ 'puppet' ] = location_for ( puppet_version )
74+ gems [ 'facter' ] = location_for ( facter_version ) if facter_version
75+ end
7076
71- gems [ 'facter' ] = location_for ( facter_version ) if facter_version
7277gems [ 'hiera' ] = location_for ( hiera_version ) if hiera_version
7378
7479gems . each do |gem_name , gem_params |
0 commit comments