@@ -21,16 +21,18 @@ group :development do
21
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
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
23
gem "voxpupuli-puppet-lint-plugins" , '~> 5.0' , require : false
24
- gem "facterdb" , '~> 1.18' , require : false
24
+ gem "facterdb" , '~> 1.18' , require : false if Gem ::Requirement . create ( [ '< 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
25
+ gem "facterdb" , '~> 3.0' , require : false if Gem ::Requirement . create ( [ '>= 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
25
26
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
27
+ gem "json-schema" , '< 5.1.1' , require : false
28
+ gem "rspec-puppet-facts" , '~> 2.0' , require : false if Gem ::Requirement . create ( [ '< 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
29
+ gem "rspec-puppet-facts" , '~> 5.0' , require : false if Gem ::Requirement . create ( [ '>= 3.0.0' ] ) . satisfied_by? ( Gem ::Version . new ( RUBY_VERSION . dup ) )
28
30
gem "codecov" , '~> 0.2' , require : false
29
31
gem "dependency_checker" , '~> 1.0.0' , require : false
30
32
gem "parallel_tests" , '= 3.12.1' , require : false
31
33
gem "pry" , '~> 0.10' , require : false
32
34
gem "simplecov-console" , '~> 0.5' , require : false
33
- gem "puppet-debugger" , '~> 1.0 ' , require : false
35
+ gem "puppet-debugger" , '~> 1.6 ' , require : false
34
36
gem "rubocop" , '= 1.48.1' , require : false
35
37
gem "rubocop-performance" , '= 1.16.0' , require : false
36
38
gem "rubocop-rspec" , '= 2.19.0' , require : false
@@ -40,13 +42,15 @@ group :development do
40
42
gem "mocha" , '< 1.2.0' , require : false
41
43
end
42
44
group :system_tests do
43
- gem "puppet_litmus" , '~> 1.0' , require : false , platforms : [ :ruby , :x64_mingw ]
45
+ gem "puppet_litmus" , '~> 2.0' , require : false , platforms : [ :ruby , :x64_mingw ] if !ENV [ 'PUPPET_FORGE_TOKEN' ] . to_s . empty?
46
+ gem "puppet_litmus" , '~> 1.0' , require : false , platforms : [ :ruby , :x64_mingw ] if ENV [ 'PUPPET_FORGE_TOKEN' ] . to_s . empty?
44
47
gem "serverspec" , '~> 2.41' , require : false
45
48
gem "rspec-retry" , require : false
46
49
end
47
- group :release_prep do
50
+ group :development , : release_prep do
48
51
gem "puppet-strings" , '~> 4.0' , require : false
49
- gem "puppetlabs_spec_helper" , '~> 6.0' , require : false
52
+ gem "puppetlabs_spec_helper" , '~> 8.0' , require : false
53
+ gem "puppet-blacksmith" , '~> 7.0' , require : false
50
54
end
51
55
52
56
puppet_version = ENV [ 'PUPPET_GEM_VERSION' ]
@@ -55,12 +59,21 @@ hiera_version = ENV['HIERA_GEM_VERSION']
55
59
56
60
gems = { }
57
61
58
- gems [ 'puppet' ] = location_for ( puppet_version )
62
+ puppet_version = ENV . fetch ( 'PUPPET_GEM_VERSION' , nil )
63
+ facter_version = ENV . fetch ( 'FACTER_GEM_VERSION' , nil )
64
+ hiera_version = ENV . fetch ( 'HIERA_GEM_VERSION' , nil )
59
65
60
66
# If facter or hiera versions have been specified via the environment
61
67
# variables
62
-
63
- gems [ 'facter' ] = location_for ( facter_version ) if facter_version
68
+ # If PUPPET_FORGE_TOKEN is set then use authenticated source for both puppet and facter, since facter is a transitive dependency of puppet
69
+ # Otherwise, do as before and use location_for to fetch gems from the default source
70
+ if !ENV [ 'PUPPET_FORGE_TOKEN' ] . to_s . empty?
71
+ gems [ 'puppet' ] = [ '~> 8.11' , { require : false , source : 'https://rubygems-puppetcore.puppet.com' } ]
72
+ gems [ 'facter' ] = [ '~> 4.11' , { require : false , source : 'https://rubygems-puppetcore.puppet.com' } ]
73
+ else
74
+ gems [ 'puppet' ] = location_for ( puppet_version )
75
+ gems [ 'facter' ] = location_for ( facter_version ) if facter_version
76
+ end
64
77
gems [ 'hiera' ] = location_for ( hiera_version ) if hiera_version
65
78
66
79
gems . each do |gem_name , gem_params |
0 commit comments