beaker 2.4.1 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- MzE2NjM0MmU0ZTNkNzk5ZDNlYWEyNzYyZjJlYmMzMDgyNTc5ZjM1MA==
4
+ MTAxY2VmNjc1ZjM2NDAyOWM3YjM1NWYxZGI5YTE0ZTk4YzhjYTczOQ==
5
5
  data.tar.gz: !binary |-
6
- NDJiOGRjNjRmNWZjYjM4MTU3NWNiNDgwZTIwZWZiNjEzNTcyZDg1Ng==
6
+ YTY1MzczMWY5YmNjOTRjZDA3MDE0MjM1ZjdmMjBmMzM3MjdhODI2ZQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- YTk5MGM2N2U3MTk5NGZmZjgwNmQyY2JiYjNhZWRiNWFkNTgxOTEwMDk0MGYz
10
- NTRjZjNmZDg4ZTgyNGE1YzVjNmFjZjcyYzlhYmE2NGQ3OTliNGNhNWI1OWQ2
11
- N2M3YjI2MWQ4NjdlMjRlNzY5MWQyMjI2MzY2YjZkYzNmZmQyMzQ=
9
+ YWQwZGE3YzVjZmRkZWZiODE5NTFmZTViMWViNGVlMTllMzFkYzMzMTdlYTM3
10
+ YWU4MTE2MDdiOTgzZDRmYTIxZjMyYjU2MDcxYjNmMjkyZDcyMTYyNGQwZDIx
11
+ YmVlYmRmNTQ5OTgxYWViOTgyZjM3NTQ5ZjJlMmUyYWQxYTE3ZjY=
12
12
  data.tar.gz: !binary |-
13
- ODMyNTM2MjUzNjE5YTQ2MWNjMTRhNzM1YjdiYjUwYjhmYzc5ZWI4MGU3N2Ri
14
- YTE0YjNjZWI1NDczYzBjMDVhYmY2MGYzOWVjM2U2MmU1ZDBkMTA3MjNiZTcy
15
- Mzg3MzA1ZTQwYWM5ZjhmNDBhZTEwNTFmZWRmZGFmODAwZTgyYzA=
13
+ Zjk1NzdiNjg5N2Y2YjE3MGZhMzZkYTY5M2RiNWIyYWRjOTY5NTIzY2FjMjFl
14
+ YTNkYmYxMTM0MmVkYTEzYzgzYTZmZjA3OGEzZTIzMzA2YzJjODM1YTY5ZTY3
15
+ ZThkYTI3NTVkMzY4ZGVkNGYyYzNmNmUwNTA0OTkwZGQ0MDUwYzQ=
data/HISTORY.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # default - History
2
2
  ## Tags
3
- * [LATEST - 13 Feb, 2015 (c3cffad8)](#LATEST)
3
+ * [LATEST - 23 Feb, 2015 (9ad8bd4c)](#LATEST)
4
+ * [beaker2.4.1 - 13 Feb, 2015 (84400ed1)](#beaker2.4.1)
4
5
  * [beaker2.4.0 - 13 Feb, 2015 (bc5a6676)](#beaker2.4.0)
5
6
  * [beaker2.3.0 - 29 Jan, 2015 (3d185da0)](#beaker2.3.0)
6
7
  * [beaker2.2.0 - 8 Jan, 2015 (cba5f7ed)](#beaker2.2.0)
@@ -70,7 +71,145 @@
70
71
  * [pe1.2 - 6 Sep, 2011 (ba3dadd2)](#pe1.2)
71
72
 
72
73
  ## Details
73
- ### <a name = "LATEST">LATEST - 13 Feb, 2015 (c3cffad8)
74
+ ### <a name = "LATEST">LATEST - 23 Feb, 2015 (9ad8bd4c)
75
+
76
+ * (GEM) update beaker version to 2.5.0 (9ad8bd4c)
77
+
78
+ * Merge pull request #701 from anodelman/win-fix (de652599)
79
+
80
+
81
+ ```
82
+ Merge pull request #701 from anodelman/win-fix
83
+
84
+ (QENG-1852) install_puppet unable to install windows msi (regression)
85
+ ```
86
+ * Merge pull request #677 from kevpl/qeng1721_aio_windowsadd (566600ba)
87
+
88
+
89
+ ```
90
+ Merge pull request #677 from kevpl/qeng1721_aio_windowsadd
91
+
92
+ qeng1721: added AIO windows support
93
+ ```
94
+ * Merge pull request #695 from liamjbennett/vagrant_windows_fix (a7a85f72)
95
+
96
+
97
+ ```
98
+ Merge pull request #695 from liamjbennett/vagrant_windows_fix
99
+
100
+ (MAINT) Rolling back change for windows in the vagrant hypervisor
101
+ ```
102
+ * Merge pull request #706 from madAndroid/GH-700-add-docker-options (8e0a7e7d)
103
+
104
+
105
+ ```
106
+ Merge pull request #706 from madAndroid/GH-700-add-docker-options
107
+
108
+ GH-700 - Allow Docker::options to be set from config hash
109
+ ```
110
+ * Merge pull request #709 from kevpl/qeng1868_3.8_answers (cd980c9e)
111
+
112
+
113
+ ```
114
+ Merge pull request #709 from kevpl/qeng1868_3.8_answers
115
+
116
+ (QENG-1868) added 3.8 answers file, based on 3.7
117
+ ```
118
+ * (QENG-1868) added 3.8 answers file, based on 3.7 (5ee004d4)
119
+
120
+ * Merge pull request #707 from johnduarte/QENG-1867 (badb17a0)
121
+
122
+
123
+ ```
124
+ Merge pull request #707 from johnduarte/QENG-1867
125
+
126
+ (QENG-1867) Add ETIMEDOUT rescue to host.rb
127
+ ```
128
+ * (QENG-1867) Add ETIMEDOUT rescue to host.rb (e7a2ed2d)
129
+
130
+
131
+ ```
132
+ (QENG-1867) Add ETIMEDOUT rescue to host.rb
133
+
134
+ This commit adds `Errno::ETIMEDOUT` to the rescue logic of the
135
+ port_open? method in lib/beaker/host.rb.
136
+
137
+ Adding this this rescue prevents the ETIMEDOUT error from short circuiting of
138
+ the logical intention of the port_open? method.
139
+ ```
140
+ * GH-700 - amend merge as per suggestion in #706 (6d56290a)
141
+
142
+ * GH-700 - amend comments to be more appropriate (02591293)
143
+
144
+ * GH-700 - handle the use case where ::Docker.options is nil (81836988)
145
+
146
+ * Merge pull request #703 from sschneid/pooling_api_syntax_fixup (041f04ad)
147
+
148
+
149
+ ```
150
+ Merge pull request #703 from sschneid/pooling_api_syntax_fixup
151
+
152
+ (MAINT) use implicit trailing '/' for pooling_api URI
153
+ ```
154
+ * (MAINT) use implicit trailing '/' for pooling_api URI (4d2e6f32)
155
+
156
+ * (QENG-1852) install_puppet unable to install windows msi (regression) (76aba308)
157
+
158
+
159
+ ```
160
+ (QENG-1852) install_puppet unable to install windows msi (regression)
161
+
162
+ - busted curl command on windows
163
+ - busted msiexec command for installation
164
+ - i cry myself to sleep every night
165
+ ```
166
+ * Merge pull request #698 from sschneid/batch_vm_checkout (b8a64f74)
167
+
168
+
169
+ ```
170
+ Merge pull request #698 from sschneid/batch_vm_checkout
171
+
172
+ (QENG-780) request sets of VMs instead of one VM at a time
173
+ ```
174
+ * GH-700 - set ::Docker.options from docker_options in options hash, if it's not set via ::Docker.options already (7db8b636)
175
+
176
+ * (QENG-780) Updating MockNet::HTTP::Post methods (72a07bd2)
177
+
178
+ * (QENG-780) request sets of VMs instead of one VM at a time (9e82d9b6)
179
+
180
+
181
+ ```
182
+ (QENG-780) request sets of VMs instead of one VM at a time
183
+
184
+ This PR facilitates use of vmpooler's batch-request POST API
185
+ (https://github.com/puppetlabs/vmpooler#post-vm) within beaker.
186
+ ```
187
+ * Merge pull request #696 from kevpl/qeng1721_aio_quickadd (831a6c4e)
188
+
189
+
190
+ ```
191
+ Merge pull request #696 from kevpl/qeng1721_aio_quickadd
192
+
193
+ (QENG-1721) added a quick AIO override for windows to unblock testing
194
+ ```
195
+ * (QENG-1721) added a quick AIO override for windows to unblock testing (ba6ba605)
196
+
197
+ * (MAINT) Rolling back change for windows in the vagrant hypervisor (16741375)
198
+
199
+
200
+ ```
201
+ (MAINT) Rolling back change for windows in the vagrant hypervisor
202
+
203
+ Rolling back the change made in bf353c1 as it is no longer required.
204
+
205
+ The subsequent change in 3aa080c for vagrant 1.7 properly fixed the issue
206
+ and so the work around can now be removed.
207
+ ```
208
+ * qeng1721: added AIO windows support (6f8deb7d)
209
+
210
+ ### <a name = "beaker2.4.1">beaker2.4.1 - 13 Feb, 2015 (84400ed1)
211
+
212
+ * (HISTORY) update beaker history for gem release 2.4.1 (84400ed1)
74
213
 
75
214
  * (GEM) update beaker version to 2.4.1 (c3cffad8)
76
215
 
@@ -19,6 +19,8 @@ module Beaker
19
19
  return Version34.new(version, hosts, options)
20
20
  when /\A3\.99/
21
21
  return Version40.new(version, hosts, options)
22
+ when /\A3\.8/
23
+ return Version34.new(version, hosts, options)
22
24
  when /\A3\.7/
23
25
  return Version34.new(version, hosts, options)
24
26
  when /\A3\.4/
@@ -1249,7 +1249,14 @@ module Beaker
1249
1249
  # In all the case that it is different, this init script will exist. So we can assume
1250
1250
  # that if the script doesn't exist, we should just use `pe-puppet`
1251
1251
  result = on agent, "[ -e /etc/init.d/pe-puppet-agent ]", :acceptable_exit_codes => [0,1]
1252
- agent_service = (result.exit_code == 0) ? 'pe-puppet-agent' : 'pe-puppet'
1252
+ agent_service = 'pe-puppet-agent'
1253
+ if result.exit_code != 0
1254
+ if agent['pe_ver'] && !version_is_less(agent['pe_ver'], '4.0')
1255
+ agent_service = 'puppet'
1256
+ else
1257
+ agent_service = 'pe-puppet'
1258
+ end
1259
+ end
1253
1260
 
1254
1261
  # Under a number of stupid circumstances, we can't stop the
1255
1262
  # agent using puppet. This is usually because of issues with
@@ -478,11 +478,18 @@ module Beaker
478
478
  host['dist'] = "puppet-enterprise-#{version}-#{host['platform']}"
479
479
  elsif host['platform'] =~ /windows/
480
480
  version = host[:pe_ver] || opts['pe_ver_win']
481
+ should_install_64bit = !(version_is_less(version, '3.4')) && host.is_x86_64? && !host['install_32'] && !opts['install_32']
481
482
  #only install 64bit builds if
482
483
  # - we are on pe version 3.4+
483
484
  # - we do not have install_32 set on host
484
485
  # - we do not have install_32 set globally
485
- if !(version_is_less(version, '3.4')) and host.is_x86_64? and not host['install_32'] and not opts['install_32']
486
+ if !(version_is_less(version, '4.0'))
487
+ if should_install_64bit
488
+ host['dist'] = "puppet-agent-#{version}-x64"
489
+ else
490
+ host['dist'] = "puppet-agent-#{version}-x86"
491
+ end
492
+ elsif should_install_64bit
486
493
  host['dist'] = "puppet-enterprise-#{version}-x64"
487
494
  else
488
495
  host['dist'] = "puppet-enterprise-#{version}"
@@ -807,8 +814,8 @@ module Beaker
807
814
  end
808
815
 
809
816
  if host['is_cygwin'].nil? or host['is_cygwin'] == true
810
- dest = "/cygdrive/c/Windows/Temp/#{host['dist']}.msi"
811
- on host, "curl -O #{dest} #{link}"
817
+ dest = "#{host['dist']}.msi"
818
+ on host, "curl -O #{link}"
812
819
 
813
820
  #Because the msi installer doesn't add Puppet to the environment path
814
821
  #Add both potential paths for simplicity
@@ -826,7 +833,7 @@ module Beaker
826
833
  on host, "if not exist #{host['distmoduledir']} (md #{host['distmoduledir']})"
827
834
  end
828
835
 
829
- on host, "msiexec /qn /i #{dest}"
836
+ on host, "cmd /C 'start /w msiexec.exe /qn /i #{dest}'"
830
837
  end
831
838
 
832
839
  # Installs Puppet and dependencies from dmg
@@ -39,8 +39,8 @@ module Windows
39
39
  'user' => 'Administrator',
40
40
  'group' => 'Administrators',
41
41
  'puppetpath' => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
42
- 'puppetconfdir' => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
43
- 'puppetcodedir' => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
42
+ 'puppetconfdir' => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
43
+ 'puppetcodedir' => '`cygpath -smF 35`/PuppetLabs/puppet/etc',
44
44
  'hieraconf' => '`cygpath -smF 35`/Puppetlabs/puppet/etc/hiera.yaml',
45
45
  'puppetvardir' => '`cygpath -smF 35`/PuppetLabs/puppet/var',
46
46
  'distmoduledir' => '`cygpath -smF 35`/PuppetLabs/puppet/etc/modules',
@@ -48,10 +48,14 @@ module Windows
48
48
  'hieralibdir' => '`cygpath -w /opt/puppet-git-repos/hiera/lib`',
49
49
  'hierapuppetlibdir' => '`cygpath -w /opt/puppet-git-repos/hiera-puppet/lib`',
50
50
  #let's just add both potential bin dirs to the path, include ruby too for `gem`, `ruby`, etc
51
- 'puppetbindir' => '/cygdrive/c/Program Files (x86)/Puppet Labs/Puppet/bin:/cygdrive/c/Program Files/Puppet Labs/Puppet/bin:/cygdrive/c/Program Files (x86)/Puppet Labs/Puppet/sys/ruby/bin:/cygdrive/c/Program Files/Puppet Labs/Puppet/sys/ruby/bin',
51
+ 'puppetbindir' => '/cygdrive/c/Program Files (x86)/Puppet Labs/Puppet/bin:/cygdrive/c/Program Files/Puppet Labs/Puppet/bin:/cygdrive/c/Program Files (x86)/Puppet Labs/Puppet/sys/ruby/bin:/cygdrive/c/Program Files/Puppet Labs/Puppet/sys/ruby/bin',
52
52
  'hierabindir' => '/opt/puppet-git-repos/hiera/bin',
53
53
  'pathseparator' => ';',
54
54
  })
55
55
  end
56
+
57
+ def self.aio_defaults
58
+ self.foss_defaults
59
+ end
56
60
  end
57
61
  end
data/lib/beaker/host.rb CHANGED
@@ -81,7 +81,7 @@ module Beaker
81
81
  TCPSocket.new(reachable_name, port).close
82
82
  return true
83
83
  end
84
- rescue Errno::ECONNREFUSED, Timeout::Error
84
+ rescue Errno::ECONNREFUSED, Timeout::Error, Errno::ETIMEDOUT
85
85
  return false
86
86
  end
87
87
  end
@@ -8,7 +8,9 @@ module Beaker
8
8
  @hosts = hosts
9
9
 
10
10
  # increase the http timeouts as provisioning images can be slow
11
- ::Docker.options = { :write_timeout => 300, :read_timeout => 300 }.merge(::Docker.options || {})
11
+ default_docker_options = { :write_timeout => 300, :read_timeout => 300 }.merge(::Docker.options || {})
12
+ # Merge docker options from the entry in hosts file
13
+ ::Docker.options = default_docker_options.merge(@options[:docker_options] || {})
12
14
  # assert that the docker-api gem can talk to your docker
13
15
  # enpoint. Will raise if there is a version mismatch
14
16
  begin
@@ -72,9 +72,7 @@ module Beaker
72
72
  end
73
73
  #replace hostname with ip
74
74
  ssh_config = ssh_config.gsub(/Host #{host.name}/, "Host #{host['ip']}") unless not host['ip']
75
- if host['platform'] =~ /windows/
76
- ssh_config = ssh_config.gsub(/127\.0\.0\.1/, host['ip']) unless not host['ip']
77
- end
75
+
78
76
  #set the user
79
77
  ssh_config = ssh_config.gsub(/User vagrant/, "User #{user}")
80
78
  f.write(ssh_config)
@@ -51,7 +51,9 @@ module Beaker
51
51
  end
52
52
 
53
53
  def provision
54
+ request_payload = {}
54
55
  start = Time.now
56
+
55
57
  @hosts.each_with_index do |h, i|
56
58
  if not h['template']
57
59
  raise ArgumentError, "You must specify a template name for #{h}"
@@ -61,39 +63,50 @@ module Beaker
61
63
  h['template'] = templatefolders.pop
62
64
  end
63
65
 
64
- @logger.notify "Requesting '#{h['template']}' VM from vCloud host pool"
66
+ request_payload[h['template']] = (request_payload[h['template']].to_i + 1).to_s
67
+ end
65
68
 
66
- last_wait, wait = 0, 1
67
- waited = 0 #the amount of time we've spent waiting for this host to provision
68
- begin
69
- uri = URI.parse(get_template_url(@options['pooling_api'], h['template']))
69
+ @logger.notify "Requesting VM set from vCloud host pool"
70
70
 
71
- http = Net::HTTP.new( uri.host, uri.port )
72
- request = Net::HTTP::Post.new(uri.request_uri)
71
+ last_wait, wait = 0, 1
72
+ waited = 0 #the amount of time we've spent waiting for this host to provision
73
+ begin
74
+ uri = URI.parse(@options['pooling_api'] + '/vm/')
73
75
 
74
- request.set_form_data({'pool' => @options['resourcepool'], 'folder' => 'foo'})
76
+ http = Net::HTTP.new(uri.host, uri.port)
77
+ request = Net::HTTP::Post.new(uri.request_uri)
78
+
79
+ request.body = request_payload.to_json
80
+
81
+ response = http.request(request)
82
+ parsed_response = JSON.parse(response.body)
83
+
84
+ if parsed_response['ok']
85
+ domain = parsed_response['domain']
86
+
87
+ @hosts.each_with_index do |h, i|
88
+ if parsed_response[h['template']]['hostname'].is_a?(Array)
89
+ hostname = parsed_response[h['template']]['hostname'].shift
90
+ else
91
+ hostname = parsed_response[h['template']]['hostname']
92
+ end
75
93
 
76
- response = http.request(request)
77
- parsed_response = JSON.parse(response.body)
78
- if parsed_response[h['template']] && parsed_response[h['template']]['ok'] && parsed_response[h['template']]['hostname']
79
- hostname = parsed_response[h['template']]['hostname']
80
- domain = parsed_response['domain']
81
94
  h['vmhostname'] = domain ? "#{hostname}.#{domain}" : hostname
82
- else
83
- raise "VcloudPooled.provision - no vCloud host free for #{h.name} in pool"
84
- end
85
- rescue JSON::ParserError, RuntimeError, *SSH_EXCEPTIONS => e
86
- if waited <= @options[:timeout].to_i
87
- @logger.debug("Retrying provision for vCloud host #{h.name} after waiting #{wait} second(s) (failed with #{e.class})")
88
- sleep wait
89
- waited += wait
90
- last_wait, wait = wait, last_wait + wait
91
- retry
95
+
96
+ @logger.notify "Using available vCloud host '#{h['vmhostname']}' (#{h.name})"
92
97
  end
93
- report_and_raise(@logger, e, 'vCloudPooled.provision')
98
+ else
99
+ raise "VcloudPooled.provision - requested vCloud hosts not available"
94
100
  end
95
-
96
- @logger.notify "Using available vCloud host '#{h['vmhostname']}' (#{h.name})"
101
+ rescue JSON::ParserError, RuntimeError, *SSH_EXCEPTIONS => e
102
+ if waited <= @options[:timeout].to_i
103
+ @logger.debug("Retrying provision for vCloud host after waiting #{wait} second(s) (failed with #{e.class})")
104
+ sleep wait
105
+ waited += wait
106
+ last_wait, wait = wait, last_wait + wait
107
+ retry
108
+ end
109
+ report_and_raise(@logger, e, 'vCloudPooled.provision')
97
110
  end
98
111
 
99
112
  @logger.notify 'Spent %.2f seconds grabbing VMs' % (Time.now - start)
@@ -1,5 +1,5 @@
1
1
  module Beaker
2
2
  module Version
3
- STRING = '2.4.1'
3
+ STRING = '2.5.0'
4
4
  end
5
5
  end
@@ -354,6 +354,7 @@ describe ClassMixedWithDSLInstallUtils do
354
354
  allow( subject ).to receive( :sign_certificate_for ).and_return( true )
355
355
  allow( subject ).to receive( :stop_agent_on ).and_return( true )
356
356
  allow( subject ).to receive( :sleep_until_puppetdb_started ).and_return( true )
357
+ allow( subject ).to receive( :version_is_less ).with('3.0', '4.0').and_return( true )
357
358
  allow( subject ).to receive( :version_is_less ).with('3.0', '3.4').and_return( true )
358
359
  allow( subject ).to receive( :version_is_less ).with('3.0', '3.0').and_return( false )
359
360
  allow( subject ).to receive( :version_is_less ).with('3.0', '3.4').and_return( true )
@@ -547,15 +548,15 @@ describe ClassMixedWithDSLInstallUtils do
547
548
  let(:platform) { "windows-2008r2-i386" }
548
549
  it 'installs specific version of puppet when passed :version' do
549
550
  allow(subject).to receive(:link_exists?).and_return( true )
550
- expect(subject).to receive(:on).with(hosts[0], 'curl -O /cygdrive/c/Windows/Temp/puppet-3000.msi http://downloads.puppetlabs.com/windows/puppet-3000.msi')
551
+ expect(subject).to receive(:on).with(hosts[0], 'curl -O http://downloads.puppetlabs.com/windows/puppet-3000.msi')
551
552
  expect(subject).to receive(:on).with(hosts[0], " echo 'export PATH=$PATH:\"/cygdrive/c/Program Files (x86)/Puppet Labs/Puppet/bin\":\"/cygdrive/c/Program Files/Puppet Labs/Puppet/bin\"' > /etc/bash.bashrc ")
552
- expect(subject).to receive(:on).with(hosts[0], 'msiexec /qn /i /cygdrive/c/Windows/Temp/puppet-3000.msi')
553
+ expect(subject).to receive(:on).with(hosts[0], 'cmd /C \'start /w msiexec.exe /qn /i puppet-3000.msi\'')
553
554
  subject.install_puppet(:version => '3000')
554
555
  end
555
556
  it 'installs from custom url when passed :win_download_url' do
556
557
  allow(subject).to receive(:link_exists?).and_return( true )
557
- expect(subject).to receive(:on).with(hosts[0], 'curl -O /cygdrive/c/Windows/Temp/puppet-3000.msi http://nightlies.puppetlabs.com/puppet-latest/repos/windows/puppet-3000.msi')
558
- expect(subject).to receive(:on).with(hosts[0], 'msiexec /qn /i /cygdrive/c/Windows/Temp/puppet-3000.msi')
558
+ expect(subject).to receive(:on).with(hosts[0], 'curl -O http://nightlies.puppetlabs.com/puppet-latest/repos/windows/puppet-3000.msi')
559
+ expect(subject).to receive(:on).with(hosts[0], 'cmd /C \'start /w msiexec.exe /qn /i puppet-3000.msi\'')
559
560
  subject.install_puppet( :version => '3000', :win_download_url => 'http://nightlies.puppetlabs.com/puppet-latest/repos/windows' )
560
561
  end
561
562
  end
data/spec/mocks.rb CHANGED
@@ -39,8 +39,8 @@ module MockNet
39
39
  @uri = uri
40
40
  end
41
41
 
42
- def set_form_data hash
43
-
42
+ def body= *args
43
+ hash
44
44
  end
45
45
  end
46
46
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.1
4
+ version: 2.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppetlabs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-13 00:00:00.000000000 Z
11
+ date: 2015-02-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -533,7 +533,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
533
533
  version: '0'
534
534
  requirements: []
535
535
  rubyforge_project:
536
- rubygems_version: 2.4.5
536
+ rubygems_version: 2.4.6
537
537
  signing_key:
538
538
  specification_version: 4
539
539
  summary: Let's test Puppet!