beaker-puppet 0.5.0 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MTY2MTE4NTMxZTBmZjRjMmM2ZmJjMGE0N2NmZjUyZTIxMzU2ZmEyZQ==
4
+ ODMyNzY5MjBiMWEyNGVmZTUyZmQzMWEyNjZkMjIzYTAzNDdmYjdmNQ==
5
5
  data.tar.gz: !binary |-
6
- MGJhNmFmZmRlMmE2YzM0NTM0MmY5NWY1MTYyYTk4NjM0NmYyY2M4Mw==
6
+ NzVkNmJmZmI0ZTczZmVmYWQ3MTgzOGJkZGJmNTBhZTk4OThlMmI5Zg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YzYzMTgxMWU1NTUxNDZkN2FiNjA0MTU0ZTVhYjFiMmQyYmM3MDY1ZTY0OWQw
10
- ZDAxNjQ4ZTJjN2Y5MjE3MjRkNzU3N2IwOTJjODYwM2Y5MWY5ZmM1NjQ5NzNm
11
- OTVjMGRjNTQ4NmEwYjIyODc3OTJkOTdhOGY3NGQzMWVhZDhlNmI=
9
+ NDE4ZWYyZjE3NmYxNWJhMWQ1YzE4YTFjZDczZGI4MzA4NGJmM2JkZDExMDJm
10
+ ZjI5ODM1M2RhMWE0OTIzMWE0MDhhMzBiMWViNmQ0NzZhZjA5NjYzZWFmYWQz
11
+ MGZkZTgwOTBkZjg2OWRiMWVkOWI0MzJhYWE0ZGQ0ZDZiZmE1ZGQ=
12
12
  data.tar.gz: !binary |-
13
- MmYyYTZjZTk1MTZkNTU4MjMxNDI2MmFmNzg0NGFhMzlkYmY0ZDY4MmI4ZTU3
14
- ZWRhNzBjMGQ4ODc3MWFkMzY2YzgyNWFmODUyODRkYWNhODEyMjZhZGVlNzg2
15
- MmVjM2VjNDgzZmMzYjI0MTU3YmI5ODRhMzNhZWE5MjViMTZlMmM=
13
+ YzUzN2I1ZTA5MThiMjFkYTNiMzJlNzNlMzIzZDM3ZmMyYjFmMGZlYzljY2Nk
14
+ NzA2ZGNhOTVhM2FiMmQ0Njc0NWFmODZhOTFiMDI0OGRjYTJlYjBmNmYyOWRl
15
+ Y2MxNDgyN2I3ZDI5MTYxN2Q1NDExYWJiZjFiZjkwOWNhOTBiN2E=
data/lib/beaker-puppet.rb CHANGED
@@ -13,6 +13,8 @@ end
13
13
  require "beaker-puppet/helpers/#{lib}_helpers"
14
14
  end
15
15
 
16
+ require 'beaker-puppet/install_utils/puppet5'
17
+
16
18
 
17
19
  module BeakerPuppet
18
20
  module InstallUtils
@@ -23,6 +25,8 @@ module BeakerPuppet
23
25
  include Beaker::DSL::InstallUtils::FOSSUtils
24
26
  include Beaker::DSL::InstallUtils::EZBakeUtils
25
27
  include Beaker::DSL::InstallUtils::ModuleUtils
28
+
29
+ include BeakerPuppet::Install::Puppet5
26
30
  end
27
31
 
28
32
  module Helpers
@@ -427,8 +427,9 @@ module Beaker
427
427
  # by the caller; this can be used for additional
428
428
  # validation, etc.
429
429
  #
430
- # @return [Array<Result>, Result, nil] An array of results, a result object,
431
- # or nil. Check {#run_block_on} for more details on this.
430
+ # @return [Array<Result>, Result, nil] An array of results, a result
431
+ # object, or nil. Check {Beaker::Shared::HostManager#run_block_on} for
432
+ # more details on this.
432
433
  def apply_manifest_on(host, manifest, opts = {}, &block)
433
434
  block_on host, opts do | host |
434
435
  on_options = {}
@@ -972,9 +972,27 @@ module Beaker
972
972
  repo_config_folder_url = "%s/%s/%s/repo_configs/%s/" %
973
973
  [ buildserver_url, package_name, build_version, host.repo_type ]
974
974
 
975
- repo = fetch_http_file( repo_config_folder_url,
976
- repo_filename,
977
- copy_dir )
975
+ repo_config_url = "#{ repo_config_folder_url }/#{ repo_filename }"
976
+ install_repo_configs_from_url( host, repo_config_url, copy_dir )
977
+ end
978
+
979
+ # Installs the repo configs on a given host
980
+ #
981
+ # @param [Beaker::Host] host Host to install configs on
982
+ # @param [String] repo_config_url URL to the repo configs
983
+ # @param [String] copy_dir Local directory to fetch files into & SCP out of
984
+ #
985
+ # @return nil
986
+ def install_repo_configs_from_url(host, repo_config_url, copy_dir = nil)
987
+ copy_dir ||= Dir.mktmpdir
988
+ repoconfig_filename = File.basename( repo_config_url )
989
+ repoconfig_folder = File.dirname( repo_config_url )
990
+
991
+ repo = fetch_http_file(
992
+ repoconfig_folder,
993
+ repoconfig_filename,
994
+ copy_dir
995
+ )
978
996
 
979
997
  if host[:platform] =~ /cisco_nexus/
980
998
  to_path = "#{host.package_config_dir}/#{File.basename(repo)}"
@@ -0,0 +1,171 @@
1
+ require 'beaker/dsl/install_utils/foss_defaults'
2
+
3
+ module BeakerPuppet
4
+ module Install
5
+ module Puppet5
6
+
7
+ include Beaker::DSL::InstallUtils::FOSSDefaults
8
+
9
+ # grab build json from the builds server
10
+ #
11
+ # @param [String] sha_yaml_url URL to the <SHA>.yaml file containing the
12
+ # build details
13
+ #
14
+ # @return [Hash{String=>String}] build json parsed into a ruby hash
15
+ def fetch_build_details(sha_yaml_url)
16
+ dst_folder = Dir.mktmpdir
17
+ sha_yaml_filename = File.basename( sha_yaml_url )
18
+ sha_yaml_folder_url = File.dirname( sha_yaml_url )
19
+
20
+ sha_yaml_file_local_path = fetch_http_file(
21
+ sha_yaml_folder_url,
22
+ sha_yaml_filename,
23
+ dst_folder
24
+ )
25
+ file_hash = YAML.load_file( sha_yaml_file_local_path )
26
+
27
+ logger.debug("YAML HASH BELOW:")
28
+ logger.debug(file_hash)
29
+ logger.debug("PLATFORM_DATA BELOW:")
30
+ logger.debug(file_hash[:platform_data])
31
+ return sha_yaml_folder_url, file_hash[:platform_data]
32
+ end
33
+
34
+ # gets the artifact & repo_config URLs for this host in the build
35
+ #
36
+ # @param [Host] host Host to get artifact URL for
37
+ # @param [Hash] build_details Details of the build in a hash
38
+ # @param [String] build_url URL to the build
39
+ #
40
+ # @return [String, String] URL to the build artifact, URL to the repo_config
41
+ # (nil if there is no repo_config for this platform for this build)
42
+ def host_urls(host, build_details, build_url)
43
+ packaging_platform = host[:packaging_platform]
44
+ if packaging_platform.nil?
45
+ message = <<-EOF
46
+ :packaging_platform not provided for host '#{host}', platform '#{host[:platform]}'
47
+ :packaging_platform should be the platform-specific key from this list:
48
+ #{ build_details.keys }
49
+ EOF
50
+ fail_test( message )
51
+ end
52
+
53
+ logger.debug("Platforms available for this build:")
54
+ logger.debug("#{ build_details.keys }")
55
+ logger.debug("PLATFORM SPECIFIC INFO for #{host} (packaging name '#{packaging_platform}'):")
56
+ packaging_data = build_details[packaging_platform]
57
+ logger.debug("- #{ packaging_data }, isnil? #{ packaging_data.nil? }")
58
+ if packaging_data.nil?
59
+ message = <<-EOF
60
+ :packaging_platform '#{packaging_platform}' for host '#{host}' not in build details
61
+ :packaging_platform should be the platform-specific key from this list:
62
+ #{ build_details.keys }
63
+ EOF
64
+ fail_test( message )
65
+ end
66
+
67
+ artifact_buildserver_path = packaging_data[:artifact]
68
+ repoconfig_buildserver_path = packaging_data[:repo_config]
69
+ fail_test('no artifact_buildserver_path found') if artifact_buildserver_path.nil?
70
+
71
+ artifact_url = "#{build_url}/#{artifact_buildserver_path}"
72
+ repoconfig_url = "#{build_url}/#{repoconfig_buildserver_path}" unless repoconfig_buildserver_path.nil?
73
+ artifact_url_correct = link_exists?( artifact_url )
74
+ logger.debug("- artifact url: '#{artifact_url}'. Exists? #{artifact_url_correct}")
75
+ fail_test('artifact url built incorrectly') if !artifact_url_correct
76
+
77
+ return artifact_url, repoconfig_url
78
+ end
79
+
80
+ # install build artifact on the given host
81
+ #
82
+ # @param [Host] host Host to install artifact on
83
+ # @param [String] artifact_url URL of the project install artifact
84
+ # @param [String] project_name Name of project for artifact. Needed for OSX installs
85
+ #
86
+ # @return nil
87
+ def install_artifact_on(host, artifact_url, project_name)
88
+ variant, _, _, _ = host[:platform].to_array
89
+ onhost_package_file = nil
90
+ if variant == 'eos'
91
+ host.get_remote_file( artifact_url )
92
+ onhost_package_file = File.basename( artifact_url )
93
+ elsif variant == 'solaris'
94
+ artifact_filename = File.basename( artifact_url )
95
+ artifact_folder = File.dirname( artifact_url )
96
+ fetch_http_file( artifact_folder, artifact_filename, '.' )
97
+ onhost_package_dir = host.tmpdir( 'puppet_installer' )
98
+ scp_to host, artifact_filename, onhost_package_dir
99
+ onhost_package_file = "#{ onhost_package_dir }/#{ artifact_filename }"
100
+ elsif variant == 'osx'
101
+ on host, "curl -O #{ artifact_url }"
102
+ onhost_package_file = "#{ project_name }*"
103
+ end
104
+
105
+ if variant == 'eos'
106
+ # TODO Will be refactored into {Beaker::Host#install_local_package}
107
+ # immediately following this work. The release timing makes it
108
+ # necessary to have this here separately for a short while
109
+ host.install_from_file( onhost_package_file )
110
+ elsif onhost_package_file
111
+ if onhost_package_dir
112
+ host.install_local_package( onhost_package_file, '.' )
113
+ else
114
+ host.install_local_package( onhost_package_file )
115
+ end
116
+ else
117
+ host.install_package( artifact_url )
118
+ end
119
+ end
120
+
121
+ # Sets up the repo_configs on the host for this build
122
+ #
123
+ # @param [Host] host Host to install repo_configs on
124
+ # @param [String] repoconfig_url URL to the repo_config
125
+ #
126
+ # @return nil
127
+ def install_repo_configs_on(host, repoconfig_url)
128
+ if repoconfig_url.nil?
129
+ logger.warn("No repo_config for host '#{host}'. Skipping repo_config install")
130
+ return
131
+ end
132
+
133
+ install_repo_configs_from_url( host, repoconfig_url )
134
+ end
135
+
136
+ # Installs a specified puppet project on all hosts. Gets build information
137
+ # from the provided YAML file located at the +sha_yaml_url+ parameter.
138
+ #
139
+ # @param [String] project_name Name of the project to install
140
+ # @param [String] sha_yaml_url URL to the <SHA>.yaml file containing the
141
+ # build details
142
+ #
143
+ # @note This install method only works for Puppet versions >= 5.0
144
+ #
145
+ # @return nil
146
+ def install_from_build_data_url(project_name, sha_yaml_url)
147
+ if !link_exists?( sha_yaml_url )
148
+ message = <<-EOF
149
+ <SHA>.yaml URL '#{ sha_yaml_url }' does not exist.
150
+ Please update the `sha_yaml_url` parameter to the `puppet5_install` method.
151
+ EOF
152
+ fail_test( message )
153
+ end
154
+
155
+ base_url, build_details = fetch_build_details( sha_yaml_url )
156
+ hosts.each do |host|
157
+ artifact_url, repoconfig_url = host_urls( host, build_details, base_url )
158
+ if repoconfig_url.nil?
159
+ install_artifact_on( host, artifact_url, project_name )
160
+ else
161
+ install_repo_configs_on( host, repoconfig_url )
162
+ host.install_package( project_name )
163
+ end
164
+ configure_type_defaults_on( host )
165
+ end
166
+ end
167
+
168
+ end
169
+ end
170
+ end
171
+
@@ -1,3 +1,3 @@
1
1
  module BeakerPuppet
2
- VERSION = '0.5.0'
2
+ VERSION = '0.6.0'
3
3
  end
@@ -0,0 +1,282 @@
1
+ require 'spec_helper'
2
+
3
+ class ClassMixedWithDSLInstallUtils
4
+ include Beaker::DSL::Outcomes
5
+ include BeakerPuppet::Install::Puppet5
6
+
7
+ def logger
8
+ @logger ||= RSpec::Mocks::Double.new('logger').as_null_object
9
+ end
10
+ end
11
+
12
+ describe ClassMixedWithDSLInstallUtils do
13
+ let(:hosts) { make_hosts( { :pe_ver => '3.0',
14
+ :platform => 'linux',
15
+ :roles => [ 'agent' ],
16
+ :type => 'foss' }, 4 ) }
17
+
18
+ before :each do
19
+ allow( subject ).to receive( :hosts ) { hosts }
20
+ end
21
+
22
+
23
+ describe '#fetch_build_details' do
24
+ let( :platform_data ) { @platform_data || '' }
25
+ let( :deets ) { { :platform_data => platform_data } }
26
+
27
+ it 'sets & returns the relative folder' do
28
+ sha_yaml_folder = '/jams/of/the/rain'
29
+ sha_yaml_url = "#{sha_yaml_folder}/puns.tgz"
30
+ expect( subject ).to receive( :fetch_http_file )
31
+ expect( YAML ).to receive( :load_file ) { deets }
32
+
33
+ url, _ = subject.fetch_build_details( sha_yaml_url )
34
+ expect( url ).to be === sha_yaml_folder
35
+ end
36
+
37
+ it 'fetches & returns the build details' do
38
+ @platform_data = 'test of the man in the can carol?'
39
+ expect( subject ).to receive( :fetch_http_file )
40
+ expect( YAML ).to receive( :load_file ) { deets }
41
+
42
+ _, hash = subject.fetch_build_details( 'sha_yaml_url' )
43
+ expect( hash ).to be === @platform_data
44
+ end
45
+
46
+ it 'stores the file in a good location' do
47
+ allow( YAML ).to receive( :load_file ) { deets }
48
+
49
+ correct_location = '/my/fake/test/dir'
50
+ expect( Dir ).to receive( :mktmpdir ) { correct_location }
51
+ expect( subject ).to receive( :fetch_http_file ).with(
52
+ anything, anything, correct_location
53
+ )
54
+ subject.fetch_build_details( 'sha_yaml_url' )
55
+ end
56
+
57
+ end
58
+
59
+ describe '#host_urls' do
60
+
61
+ let( :artifact_path ) { @artifact_path || '' }
62
+ let( :repo_config ) { @repo_config || nil }
63
+ let( :packaging_platform ) { @packaging_platform || 'el-7-x86_64' }
64
+ let( :host ) {
65
+ host = hosts[0]
66
+ allow( host ).to receive( :[] ).with( :packaging_platform ) {
67
+ packaging_platform
68
+ }
69
+ host
70
+ }
71
+ let( :build_details ) {
72
+ details = {
73
+ packaging_platform => {
74
+ :artifact => artifact_path,
75
+ :repo_config => repo_config
76
+ }
77
+ }
78
+ details
79
+ }
80
+
81
+ it 'fails if there\'s no artifact value for the given platform' do
82
+ allow( artifact_path ).to receive( :nil? ) { true }
83
+ expect {
84
+ subject.host_urls( host, build_details, '' )
85
+ }.to raise_error(
86
+ Beaker::DSL::Outcomes::FailTest,
87
+ /^no artifact.*path found$/
88
+ )
89
+ end
90
+
91
+ it 'fails if the artifact_url doesn\'t exist' do
92
+ allow( subject ).to receive( :link_exists? ) { false }
93
+ expect {
94
+ subject.host_urls( host, build_details, '' )
95
+ }.to raise_error(
96
+ Beaker::DSL::Outcomes::FailTest,
97
+ /^artifact url.*incorrectly$/
98
+ )
99
+ end
100
+
101
+ it 'fails if the host doesn\'t have a packaging_platform' do
102
+ allow( packaging_platform ).to receive( :nil? ) { true }
103
+ allow( host ).to receive( :[] ).with( :platform ) { 'fake-platform' }
104
+ expect {
105
+ subject.host_urls( host, build_details, '' )
106
+ }.to raise_error(
107
+ Beaker::DSL::Outcomes::FailTest,
108
+ /packaging_platform not provided for host/
109
+ )
110
+ end
111
+
112
+ it 'returns a join of the base_url & the platform-specific artifact path' do
113
+ base_url = 'base_url/base_url'
114
+ @artifact_path = 'pants.install.pkg'
115
+
116
+ allow( subject ).to receive( :link_exists? ) { true }
117
+ artifact_url, _ = subject.host_urls( host, build_details, base_url )
118
+ expect( artifact_url ).to be === "#{base_url}/#{@artifact_path}"
119
+ end
120
+
121
+ it 'returns a join of the base_url & the platform-specific artifact path' do
122
+ base_url = 'base_url/base_url'
123
+ @repo_config = 'pants.install.list'
124
+
125
+ allow( subject ).to receive( :link_exists? ) { true }
126
+ _, repoconfig_url = subject.host_urls( host, build_details, base_url )
127
+ expect( repoconfig_url ).to be === "#{base_url}/#{@repo_config}"
128
+ end
129
+
130
+ it 'returns nil for the repoconfig_url if one isn\'t provided by the build_details' do
131
+ allow( subject ).to receive( :link_exists? ) { true }
132
+ _, repoconfig_url = subject.host_urls( host, build_details, '' )
133
+ expect( repoconfig_url ).to be_nil
134
+ end
135
+
136
+ end
137
+
138
+ describe '#install_artifact_on' do
139
+
140
+ let( :artifact_url ) { 'url://in/the/jungle/lies/the/prize.pnc' }
141
+ let( :platform ) { @platform || 'linux' }
142
+ let( :mock_platform ) {
143
+ mock_platform = Object.new
144
+ allow( mock_platform ).to receive( :to_array ) { [platform, '', '', ''] }
145
+ mock_platform
146
+ }
147
+ let( :host ) {
148
+ host = hosts[0]
149
+ allow( host ).to receive( :[] ).with( :platform ) { mock_platform }
150
+ host
151
+ }
152
+
153
+ it 'calls host.install_package in the common case' do
154
+ expect( subject ).to receive( :fetch_http_file ).never
155
+ expect( subject ).to receive( :on ).never
156
+ expect( host ).to receive( :install_local_package ).never
157
+ expect( host ).to receive( :install_package ).once
158
+
159
+ subject.install_artifact_on( host, artifact_url, 'project_name' )
160
+ end
161
+
162
+ context 'local install cases' do
163
+
164
+ def run_shared_test_steps
165
+ expect( host ).to receive( :install_local_package ).once
166
+ expect( host ).to receive( :install_package ).never
167
+ subject.install_artifact_on( host, artifact_url, 'project_name' )
168
+ end
169
+
170
+ it 'SOLARIS: fetches the file & runs local install' do
171
+ @platform = 'solaris'
172
+
173
+ expect( subject ).to receive( :fetch_http_file ).once
174
+ expect( subject ).to receive( :scp_to ).once
175
+ run_shared_test_steps()
176
+ end
177
+
178
+ it 'OSX: curls the file & runs local install' do
179
+ @platform = 'osx'
180
+
181
+ expect( subject ).to receive( :on ).with( host, /^curl.*#{artifact_url}$/ )
182
+ run_shared_test_steps()
183
+ end
184
+
185
+ end
186
+
187
+ end
188
+
189
+ describe '#install_repo_configs_on' do
190
+ let( :host ) { hosts[0] }
191
+
192
+ it 'passes the parameters through to #install_repo_configs_from_url' do
193
+ repoconfig_url = 'string/test/repo_config/stuff.stuff'
194
+ expect( subject ).to receive( :install_repo_configs_from_url ).with(
195
+ host,
196
+ repoconfig_url
197
+ )
198
+ expect( subject.logger ).to receive( :warn ).never
199
+ subject.install_repo_configs_on( host, repoconfig_url )
200
+ end
201
+
202
+ it 'returns without calling #install_repo_configs_from_url if repoconfig_url is nil' do
203
+ expect( subject ).to receive( :install_repo_configs_from_url ).never
204
+ expect( subject.logger ).to receive( :warn ).with(
205
+ /^No repo_config.*Skipping repo_config install$/
206
+ )
207
+ subject.install_repo_configs_on( host, nil )
208
+ end
209
+ end
210
+
211
+ describe '#install_from_build_data_url' do
212
+
213
+ before :each do
214
+ allow( subject ).to receive( :link_exists? ) { true }
215
+ end
216
+
217
+ it 'only calls #fetch_build_details once' do
218
+ allow( subject ).to receive( :host_urls )
219
+ allow( subject ).to receive( :install_artifact_on )
220
+ allow( subject ).to receive( :configure_type_defaults_on )
221
+
222
+ expect( subject ).to receive( :fetch_build_details ).once
223
+ subject.install_from_build_data_url( 'project_name', 'project_sha' )
224
+ end
225
+
226
+ it 'calls #configure_type_defaults_on all hosts' do
227
+ allow( subject ).to receive( :fetch_build_details )
228
+ allow( subject ).to receive( :host_urls )
229
+ allow( subject ).to receive( :install_artifact_on )
230
+
231
+ hosts.each do |host|
232
+ expect( subject ).to receive( :configure_type_defaults_on ).with( host ).once
233
+ end
234
+ subject.install_from_build_data_url( 'project_name', 'project_sha' )
235
+ end
236
+
237
+ it 'passes the artifact_url from #hosts_artifact_url to #install_artifact_on' do
238
+ allow( subject ).to receive( :fetch_build_details )
239
+ allow( subject ).to receive( :configure_type_defaults_on )
240
+
241
+ artifact_url = 'url://in/my/shoe/lies/the/trophy.jnk'
242
+ allow( subject ).to receive( :host_urls ) { artifact_url }
243
+
244
+
245
+ expect( subject ).to receive( :install_artifact_on ).with(
246
+ anything, artifact_url, anything
247
+ ).exactly( hosts.length ).times
248
+ subject.install_from_build_data_url('project_name', 'project_sha' )
249
+ end
250
+
251
+ it 'fails properly if the given sha_yaml_url doesn\'t exist' do
252
+ allow( subject ).to receive( :link_exists? ) { false }
253
+ sha_yaml_url = 'pants/to/the/man/jeans.txt'
254
+
255
+ expect {
256
+ subject.install_from_build_data_url( 'project_name', sha_yaml_url )
257
+ }.to raise_error(
258
+ Beaker::DSL::Outcomes::FailTest,
259
+ /#{sha_yaml_url}' does not exist/
260
+ )
261
+ end
262
+
263
+ it 'runs host.install_package instead of #install_artifact_on if theres a repo_config' do
264
+ repoconfig_url = 'pants/man/shoot/to/the/stars'
265
+ project_name = 'fake_project_66'
266
+ allow( subject ).to receive( :fetch_build_details )
267
+ allow( subject ).to receive( :configure_type_defaults_on )
268
+ allow( subject ).to receive( :host_urls ) { ['', repoconfig_url] }
269
+
270
+ expect( subject ).to receive( :install_artifact_on ).never
271
+ hosts.each do |host|
272
+ expect( subject ).to receive( :install_repo_configs_on ).with(
273
+ host,
274
+ repoconfig_url
275
+ )
276
+ expect( host ).to receive( :install_package ).with( project_name )
277
+ end
278
+ subject.install_from_build_data_url( project_name, 'sha_yaml_url' )
279
+ end
280
+ end
281
+
282
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker-puppet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-18 00:00:00.000000000 Z
11
+ date: 2017-08-21 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -219,6 +219,7 @@ files:
219
219
  - lib/beaker-puppet/install_utils/foss_defaults.rb
220
220
  - lib/beaker-puppet/install_utils/foss_utils.rb
221
221
  - lib/beaker-puppet/install_utils/module_utils.rb
222
+ - lib/beaker-puppet/install_utils/puppet5.rb
222
223
  - lib/beaker-puppet/install_utils/puppet_utils.rb
223
224
  - lib/beaker-puppet/version.rb
224
225
  - lib/beaker-puppet/wrappers.rb
@@ -236,6 +237,7 @@ files:
236
237
  - spec/beaker-puppet/helpers/tk_helpers_spec.rb
237
238
  - spec/beaker-puppet/install_utils/foss_utils_spec.rb
238
239
  - spec/beaker-puppet/install_utils/module_utils_spec.rb
240
+ - spec/beaker-puppet/install_utils/puppet5_spec.rb
239
241
  - spec/beaker-puppet/install_utils/puppet_utils_spec.rb
240
242
  - spec/helpers.rb
241
243
  - spec/spec_helper.rb