beaker 2.10.0 → 2.11.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.
Files changed (43) hide show
  1. checksums.yaml +8 -8
  2. data/HISTORY.md +292 -4
  3. data/acceptance/tests/base/host.rb +1 -0
  4. data/lib/beaker/answers/version30.rb +10 -10
  5. data/lib/beaker/cli.rb +10 -8
  6. data/lib/beaker/command.rb +1 -1
  7. data/lib/beaker/dsl/helpers/facter_helpers.rb +10 -1
  8. data/lib/beaker/dsl/helpers/hiera_helpers.rb +0 -11
  9. data/lib/beaker/dsl/helpers/host_helpers.rb +12 -3
  10. data/lib/beaker/dsl/helpers/puppet_helpers.rb +11 -3
  11. data/lib/beaker/dsl/helpers/tk_helpers.rb +0 -12
  12. data/lib/beaker/dsl/helpers/web_helpers.rb +0 -12
  13. data/lib/beaker/dsl/install_utils/module_utils.rb +9 -6
  14. data/lib/beaker/dsl/install_utils/pe_utils.rb +60 -8
  15. data/lib/beaker/dsl/install_utils/puppet_utils.rb +15 -2
  16. data/lib/beaker/host.rb +11 -145
  17. data/lib/beaker/host/mac.rb +3 -7
  18. data/lib/beaker/host/mac/pkg.rb +43 -0
  19. data/lib/beaker/host/pswindows.rb +1 -1
  20. data/lib/beaker/host/pswindows/exec.rb +83 -2
  21. data/lib/beaker/host/pswindows/pkg.rb +9 -6
  22. data/lib/beaker/host/unix/exec.rb +105 -0
  23. data/lib/beaker/host/unix/pkg.rb +22 -9
  24. data/lib/beaker/host/windows.rb +2 -1
  25. data/lib/beaker/host/windows/exec.rb +1 -1
  26. data/lib/beaker/host/windows/pkg.rb +4 -7
  27. data/lib/beaker/host_prebuilt_steps.rb +14 -14
  28. data/lib/beaker/hypervisor/aws_sdk.rb +198 -114
  29. data/lib/beaker/hypervisor/openstack.rb +48 -25
  30. data/lib/beaker/shared/host_manager.rb +11 -2
  31. data/lib/beaker/ssh_connection.rb +26 -0
  32. data/lib/beaker/version.rb +1 -1
  33. data/spec/beaker/answers_spec.rb +56 -0
  34. data/spec/beaker/cli_spec.rb +16 -12
  35. data/spec/beaker/command_spec.rb +3 -0
  36. data/spec/beaker/dsl/install_utils/module_utils_spec.rb +2 -2
  37. data/spec/beaker/dsl/install_utils/pe_utils_spec.rb +71 -3
  38. data/spec/beaker/dsl/install_utils/puppet_utils_spec.rb +4 -1
  39. data/spec/beaker/host/unix/pkg_spec.rb +10 -10
  40. data/spec/beaker/host_prebuilt_steps_spec.rb +3 -1
  41. data/spec/beaker/host_spec.rb +8 -2
  42. data/spec/beaker/hypervisor/vagrant_spec.rb +1 -0
  43. metadata +3 -2
@@ -88,8 +88,17 @@ module Beaker
88
88
  end
89
89
  end
90
90
  if block_hosts.is_a? Array
91
- result = block_hosts.map do |h|
92
- run_block_on h, nil, &block
91
+ if block_hosts.length > 0
92
+ result = block_hosts.map do |h|
93
+ run_block_on h, nil, &block
94
+ end
95
+ else
96
+ # there are no matching hosts to execute against
97
+ # should warn here
98
+ # check if logger is defined in this context
99
+ if ( cur_logger = (logger || @logger ) )
100
+ cur_logger.warn "Attempting to execute against an empty array of hosts (#{hosts}, filtered to #{block_hosts}), no execution will occur"
101
+ end
93
102
  end
94
103
  else
95
104
  result = yield block_hosts
@@ -78,6 +78,32 @@ module Beaker
78
78
  end
79
79
  end
80
80
 
81
+ #We expect the connection to close so wait for that to happen
82
+ def wait_for_connection_failure
83
+ try = 1
84
+ last_wait = 0
85
+ wait = 1
86
+ while try < 11
87
+ begin
88
+ @logger.debug "Waiting for connection failure on #{@hostname} (attempt #{try}, try again in #{wait} second(s))"
89
+ @ssh.open_channel do |channel|
90
+ channel.exec('') #Just send something down the pipe
91
+ end
92
+ loop_tries = 0
93
+ #loop is actually loop_forver, so let it try 3 times and then quit instead of endless blocking
94
+ @ssh.loop { loop_tries += 1 ; loop_tries < 4 }
95
+ rescue *RETRYABLE_EXCEPTIONS => e
96
+ @logger.debug "Connection on #{@hostname} failed as expected (#{e.class.name} - #{e.message})"
97
+ close #this connection is bad, shut it down
98
+ return true
99
+ end
100
+ sleep wait
101
+ (last_wait, wait) = wait, last_wait + wait
102
+ try += 1
103
+ end
104
+ false
105
+ end
106
+
81
107
  def try_to_execute command, options = {}, stdout_callback = nil,
82
108
  stderr_callback = stdout_callback
83
109
 
@@ -1,5 +1,5 @@
1
1
  module Beaker
2
2
  module Version
3
- STRING = '2.10.0'
3
+ STRING = '2.11.0'
4
4
  end
5
5
  end
@@ -446,4 +446,60 @@ module Beaker
446
446
  end
447
447
  end
448
448
  end
449
+
450
+ describe 'Customization' do
451
+ let( :basic_hosts ) { make_hosts( { 'pe_ver' => @ver } ) }
452
+ let( :options ) { Beaker::Options::Presets.new.presets }
453
+ let( :hosts ) { basic_hosts[0]['roles'] = ['master', 'database', 'dashboard']
454
+ basic_hosts[1]['platform'] = 'windows'
455
+ basic_hosts }
456
+ let( :answers ) { Beaker::Answers.create(@ver, hosts, options) }
457
+
458
+ def test_answer_customization(answer_key, value_to_set)
459
+ @ver = '3.0'
460
+ options[:answers][answer_key] = value_to_set
461
+ host_answers = answers.answers['vm1']
462
+ expect( host_answers[answer_key] ).to be === value_to_set
463
+ end
464
+
465
+ it 'sets :q_puppetdb_hostname' do
466
+ test_answer_customization(:q_puppetdb_hostname, 'q_puppetdb_hostname_custom01')
467
+ end
468
+
469
+ it 'sets :q_puppetdb_database_user' do
470
+ test_answer_customization(:q_puppetdb_database_user, 'q_puppetdb_database_user_custom02')
471
+ end
472
+
473
+ it 'sets :q_puppetdb_database_password' do
474
+ test_answer_customization(:q_puppetdb_database_password, 'q_puppetdb_database_password_custom03')
475
+ end
476
+
477
+ it 'sets :q_puppet_enterpriseconsole_auth_database_password' do
478
+ answer = 'q_puppet_enterpriseconsole_auth_database_password_custom04'
479
+ test_answer_customization(:q_puppet_enterpriseconsole_auth_database_password, answer)
480
+ end
481
+
482
+ it 'sets :q_puppet_enterpriseconsole_database_user' do
483
+ answer = 'q_puppet_enterpriseconsole_database_user_custom05'
484
+ test_answer_customization(:q_puppet_enterpriseconsole_database_user, answer)
485
+ end
486
+
487
+ it 'sets :q_puppet_enterpriseconsole_database_password' do
488
+ answer = 'q_puppet_enterpriseconsole_database_password_custom06'
489
+ test_answer_customization(:q_puppet_enterpriseconsole_database_password, answer)
490
+ end
491
+
492
+ it 'sets :q_database_host' do
493
+ test_answer_customization(:q_database_host, 'q_database_host_custom07')
494
+ end
495
+
496
+ it 'sets :q_database_install' do
497
+ test_answer_customization(:q_database_install, 'q_database_install_custom08')
498
+ end
499
+
500
+ it 'sets :q_pe_database' do
501
+ test_answer_customization(:q_pe_database, 'q_pe_database_custom08')
502
+ end
503
+
504
+ end
449
505
  end
@@ -235,7 +235,7 @@ module Beaker
235
235
 
236
236
  cli.execute!
237
237
 
238
- copied_hosts_file = File.join(File.absolute_path(dir), options[:hosts_file])
238
+ copied_hosts_file = File.join(File.absolute_path(dir), 'hosts_preserved.yml')
239
239
  expect( File.exists?(copied_hosts_file) ).to be_truthy
240
240
  end
241
241
  end
@@ -247,11 +247,24 @@ module Beaker
247
247
 
248
248
  cli.execute!
249
249
 
250
- copied_hosts_file = File.join(File.absolute_path(dir), options[:hosts_file])
250
+ copied_hosts_file = File.join(File.absolute_path(dir), 'hosts_preserved.yml')
251
251
  expect{ YAML.load_file(copied_hosts_file) }.to_not raise_error
252
252
  end
253
253
  end
254
254
 
255
+ it 'sets :provision to false in the copied hosts file' do
256
+ options = cli.instance_variable_get(:@options)
257
+ Dir.mktmpdir do |dir|
258
+ options[:log_dated_dir] = File.absolute_path(dir)
259
+
260
+ cli.execute!
261
+
262
+ copied_hosts_file = File.join(File.absolute_path(dir), 'hosts_preserved.yml')
263
+ yaml_content = YAML.load_file(copied_hosts_file)
264
+ expect( yaml_content['CONFIG']['provision'] ).to be_falsy
265
+ end
266
+ end
267
+
255
268
  it 'sets the @options :hosts_preserved_yaml_file to the copied file' do
256
269
  options = cli.instance_variable_get(:@options)
257
270
  Dir.mktmpdir do |dir|
@@ -261,7 +274,7 @@ module Beaker
261
274
  cli.execute!
262
275
  expect( options.has_key?(:hosts_preserved_yaml_file) ).to be_truthy
263
276
 
264
- copied_hosts_file = File.join(File.absolute_path(dir), options[:hosts_file])
277
+ copied_hosts_file = File.join(File.absolute_path(dir), 'hosts_preserved.yml')
265
278
  expect( options[:hosts_preserved_yaml_file] ).to be === copied_hosts_file
266
279
  end
267
280
  end
@@ -381,15 +394,6 @@ module Beaker
381
394
  answer = cli.build_hosts_preserved_reproducing_command(command_to_sub, 'can/talk/to/bears.yml')
382
395
  expect( answer.start_with?(command_correct) ).to be_truthy
383
396
  end
384
-
385
- it 'adds a --no-provision flag to the end of the command' do
386
- new_hosts_file = 'john/deer/was/here.txt'
387
- command_to_sub = 'p --log-level debug johnnypantaloons7 --jankies --flag-business'
388
- command_correct = command_to_sub + ' --no-provision'
389
-
390
- answer = cli.build_hosts_preserved_reproducing_command(command_to_sub, new_hosts_file)
391
- expect( answer ).to be === command_correct
392
- end
393
397
  end
394
398
  end
395
399
  end
@@ -45,15 +45,18 @@ module Beaker
45
45
  let(:host) { {'pathseparator' => ':'} }
46
46
 
47
47
  it 'returns a blank string if theres no env' do
48
+ expect( host ).to receive( :is_powershell? ).never
48
49
  expect( subject.environment_string_for(host, {}) ).to be == ''
49
50
  end
50
51
 
51
52
  it 'takes an env hash with var_name/value pairs' do
53
+ expect( host ).to receive( :is_powershell? ).and_return(false)
52
54
  expect( subject.environment_string_for(host, {:HOME => '/'}) ).
53
55
  to be == "env HOME=\"/\""
54
56
  end
55
57
 
56
58
  it 'takes an env hash with var_name/value[Array] pairs' do
59
+ expect( host ).to receive( :is_powershell? ).and_return(false)
57
60
  expect( subject.environment_string_for(host, {:LD_PATH => ['/', '/tmp']}) ).
58
61
  to be == "env LD_PATH=\"/:/tmp\""
59
62
  end
@@ -118,7 +118,7 @@ describe ClassMixedWithDSLInstallUtils do
118
118
  it{
119
119
  host = double("host")
120
120
  allow( host ).to receive(:[]).with('distmoduledir').and_return('/etc/puppetlabs/puppet/modules')
121
- allow( host ).to receive(:is_cygwin?).and_return(true)
121
+ allow( host ).to receive(:is_powershell?).and_return(false)
122
122
  result = double
123
123
  stdout = target.split('/')[0..-2].join('/') + "\n"
124
124
  allow( result ).to receive(:stdout).and_return( stdout )
@@ -179,7 +179,7 @@ describe ClassMixedWithDSLInstallUtils do
179
179
  host = double("host")
180
180
  allow( host ).to receive(:[]).with('platform').and_return('windows')
181
181
  allow( host ).to receive(:[]).with('distmoduledir').and_return('C:\\ProgramData\\PuppetLabs\\puppet\\etc\\modules')
182
- allow( host ).to receive(:is_cygwin?).and_return(false)
182
+ allow( host ).to receive(:is_powershell?).and_return(true)
183
183
 
184
184
  result = double
185
185
  allow( result ).to receive(:stdout).and_return( 'C:\\ProgramData\\PuppetLabs\\puppet\\etc\\modules' )
@@ -64,6 +64,7 @@ describe ClassMixedWithDSLInstallUtils do
64
64
  it 'generates a windows PE install command for a windows host' do
65
65
  winhost['dist'] = 'puppet-enterprise-3.0'
66
66
  allow( subject ).to receive( :hosts ).and_return( [ hosts[1], hosts[0], hosts[2], winhost ] )
67
+ allow( winhost ).to receive( :is_cygwin?).and_return(true)
67
68
  expect( subject.installer_cmd( winhost, {} ) ).to be === "cd /tmp && cmd /C 'start /w msiexec.exe /qn /L*V tmp.log /i puppet-enterprise-3.0.msi PUPPET_MASTER_SERVER=vm1 PUPPET_AGENT_CERTNAME=winhost'"
68
69
  end
69
70
 
@@ -167,6 +168,25 @@ describe ClassMixedWithDSLInstallUtils do
167
168
  subject.fetch_pe( [unixhost], {} )
168
169
  end
169
170
 
171
+ it 'can download a PE .tar from a URL to #fetch_and_push_pe' do
172
+ allow( File ).to receive( :directory? ).and_return( false ) #is not local
173
+ allow( subject ).to receive( :link_exists? ) do |arg|
174
+ if arg =~ /.tar.gz/ #there is no .tar.gz link, only a .tar
175
+ false
176
+ else
177
+ true
178
+ end
179
+ end
180
+ allow( subject ).to receive( :on ).and_return( true )
181
+
182
+ path = unixhost['pe_dir']
183
+ filename = "#{ unixhost['dist'] }"
184
+ extension = '.tar'
185
+ expect( subject ).to receive( :fetch_and_push_pe ).with( unixhost, anything, filename, extension ).once
186
+ expect( subject ).to receive( :on ).with( unixhost, "cd #{ unixhost['working_dir'] }; cat #{ filename }#{ extension } | tar -xvf -" ).once
187
+ subject.fetch_pe( [unixhost], {:fetch_local_then_push_to_host => true} )
188
+ end
189
+
170
190
  it 'can download a PE .tar.gz from a URL to a host and unpack it' do
171
191
  allow( File ).to receive( :directory? ).and_return( false ) #is not local
172
192
  allow( subject ).to receive( :link_exists? ).and_return( true ) #is a tar.gz
@@ -179,6 +199,19 @@ describe ClassMixedWithDSLInstallUtils do
179
199
  subject.fetch_pe( [unixhost], {} )
180
200
  end
181
201
 
202
+ it 'can download a PE .tar.gz from a URL to #fetch_and_push_pe' do
203
+ allow( File ).to receive( :directory? ).and_return( false ) #is not local
204
+ allow( subject ).to receive( :link_exists? ).and_return( true ) #is a tar.gz
205
+ allow( subject ).to receive( :on ).and_return( true )
206
+
207
+ path = unixhost['pe_dir']
208
+ filename = "#{ unixhost['dist'] }"
209
+ extension = '.tar.gz'
210
+ expect( subject ).to receive( :fetch_and_push_pe ).with( unixhost, anything, filename, extension ).once
211
+ expect( subject ).to receive( :on ).with( unixhost, "cd #{ unixhost['working_dir'] }; cat #{ filename }#{ extension } | gunzip | tar -xvf -" ).once
212
+ subject.fetch_pe( [unixhost], {:fetch_local_then_push_to_host => true} )
213
+ end
214
+
182
215
  it 'can download a PE .swix from a URL to an EOS host and unpack it' do
183
216
  allow( File ).to receive( :directory? ).and_return( false ) #is not local
184
217
  allow( subject ).to receive( :link_exists? ).and_return( true ) #is a tar.gz
@@ -253,7 +286,7 @@ describe ClassMixedWithDSLInstallUtils do
253
286
  allow( subject ).to receive( :version_is_less ).with('3.0', '4.0').and_return( true )
254
287
  allow( subject ).to receive( :version_is_less ).with('3.0', '3.4').and_return( true )
255
288
  allow( subject ).to receive( :version_is_less ).with('3.0', '3.0').and_return( false )
256
- allow( subject ).to receive( :version_is_less ).with('3.0', '3.4').and_return( true )
289
+ allow( subject ).to receive( :version_is_less ).with('3.0', '3.99').and_return( true )
257
290
  allow( subject ).to receive( :wait_for_host_in_dashboard ).and_return( true )
258
291
  allow( subject ).to receive( :puppet_agent ) do |arg|
259
292
  "puppet agent #{arg}"
@@ -356,7 +389,7 @@ describe ClassMixedWithDSLInstallUtils do
356
389
  "cd /tmp/2014-07-01_15.27.53/puppet-enterprise-3.0-linux ; nohup ./pe-installer <<<Y > higgs_2014-07-01_15.27.53.log 2>&1 &",
357
390
  opts ).once
358
391
  #check to see if the higgs installation has proceeded correctly, works on second check
359
- expect( subject ).to receive( :on ).with( hosts[0], /cat #{hosts[0]['higgs_file']}/, { :acceptable_exit_codes => 0..255 }).and_return( @fail_result, @success_result )
392
+ expect( subject ).to receive( :on ).with( hosts[0], /cat #{hosts[0]['higgs_file']}/, { :accept_all_exit_codes => true }).and_return( @fail_result, @success_result )
360
393
  subject.do_higgs_install( hosts[0], opts )
361
394
  end
362
395
 
@@ -371,7 +404,7 @@ describe ClassMixedWithDSLInstallUtils do
371
404
  "cd /tmp/2014-07-01_15.27.53/puppet-enterprise-3.0-linux ; nohup ./pe-installer <<<Y > higgs_2014-07-01_15.27.53.log 2>&1 &",
372
405
  opts ).once
373
406
  #check to see if the higgs installation has proceeded correctly, works on second check
374
- expect( subject ).to receive( :on ).with( hosts[0], /cat #{hosts[0]['higgs_file']}/, { :acceptable_exit_codes => 0..255 }).exactly(10).times.and_return( @fail_result )
407
+ expect( subject ).to receive( :on ).with( hosts[0], /cat #{hosts[0]['higgs_file']}/, { :accept_all_exit_codes => true }).exactly(10).times.and_return( @fail_result )
375
408
  expect{ subject.do_higgs_install( hosts[0], opts ) }.to raise_error
376
409
  end
377
410
 
@@ -472,4 +505,39 @@ describe ClassMixedWithDSLInstallUtils do
472
505
 
473
506
  end
474
507
 
508
+ describe 'fetch_and_push_pe' do
509
+
510
+ it 'fetches the file' do
511
+ allow( subject ).to receive( :scp_to )
512
+
513
+ path = 'abcde/fg/hij'
514
+ filename = 'pants'
515
+ extension = '.txt'
516
+ expect( subject ).to receive( :fetch_http_file ).with( path, "#{filename}#{extension}", 'tmp/pe' )
517
+ subject.fetch_and_push_pe(unixhost, path, filename, extension)
518
+ end
519
+
520
+ it 'allows you to set the local copy dir' do
521
+ allow( subject ).to receive( :scp_to )
522
+
523
+ path = 'defg/hi/j'
524
+ filename = 'pants'
525
+ extension = '.txt'
526
+ local_dir = '/root/domes'
527
+ expect( subject ).to receive( :fetch_http_file ).with( path, "#{filename}#{extension}", local_dir )
528
+ subject.fetch_and_push_pe(unixhost, path, filename, extension, local_dir)
529
+ end
530
+
531
+ it 'scp\'s to the host' do
532
+ allow( subject ).to receive( :fetch_http_file )
533
+
534
+ path = 'abcde/fg/hij'
535
+ filename = 'pants'
536
+ extension = '.txt'
537
+ expect( subject ).to receive( :scp_to ).with( unixhost, "tmp/pe/#{filename}#{extension}", unixhost['working_dir'] )
538
+ subject.fetch_and_push_pe(unixhost, path, filename, extension)
539
+ end
540
+
541
+ end
542
+
475
543
  end
@@ -27,7 +27,8 @@ describe ClassMixedWithDSLInstallUtils do
27
27
  let(:hosts_sorted) { [ hosts[1], hosts[0], hosts[2], hosts[3] ] }
28
28
  let(:winhost) { make_host( 'winhost', { :platform => 'windows',
29
29
  :pe_ver => '3.0',
30
- :working_dir => '/tmp' } ) }
30
+ :working_dir => '/tmp',
31
+ :is_cygwin => true} ) }
31
32
  let(:winhost_non_cygwin) { make_host( 'winhost_non_cygwin', { :platform => 'windows',
32
33
  :pe_ver => '3.0',
33
34
  :working_dir => '/tmp',
@@ -242,6 +243,7 @@ describe ClassMixedWithDSLInstallUtils do
242
243
  context 'on windows' do
243
244
  let(:platform) { "windows-2008r2-i386" }
244
245
  it 'installs specific version of puppet when passed :version' do
246
+ allow(hosts[0]).to receive(:is_cygwin?).and_return(true)
245
247
  allow(subject).to receive(:link_exists?).and_return( true )
246
248
  expect(subject).to receive(:on).with(hosts[0], 'curl -O http://downloads.puppetlabs.com/windows/puppet-3000.msi')
247
249
  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 ")
@@ -249,6 +251,7 @@ describe ClassMixedWithDSLInstallUtils do
249
251
  subject.install_puppet(:version => '3000')
250
252
  end
251
253
  it 'installs from custom url when passed :win_download_url' do
254
+ allow(hosts[0]).to receive(:is_cygwin?).and_return(true)
252
255
  allow(subject).to receive(:link_exists?).and_return( true )
253
256
  expect(subject).to receive(:on).with(hosts[0], 'curl -O http://nightlies.puppetlabs.com/puppet-latest/repos/windows/puppet-3000.msi')
254
257
  expect(subject).to receive(:on).with(hosts[0], 'cmd /C \'start /w msiexec.exe /qn /i puppet-3000.msi\'')
@@ -29,7 +29,7 @@ module Beaker
29
29
  @opts = {'platform' => 'sles-is-me'}
30
30
  pkg = 'sles_package'
31
31
  expect( Beaker::Command ).to receive(:new).with("zypper se -i --match-exact #{pkg}").and_return('')
32
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
32
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
33
33
  expect( instance.check_for_package(pkg) ).to be === true
34
34
  end
35
35
 
@@ -37,7 +37,7 @@ module Beaker
37
37
  @opts = {'platform' => 'fedora-is-me'}
38
38
  pkg = 'fedora_package'
39
39
  expect( Beaker::Command ).to receive(:new).with("rpm -q #{pkg}").and_return('')
40
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
40
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
41
41
  expect( instance.check_for_package(pkg) ).to be === true
42
42
  end
43
43
 
@@ -45,7 +45,7 @@ module Beaker
45
45
  @opts = {'platform' => 'centos-is-me'}
46
46
  pkg = 'centos_package'
47
47
  expect( Beaker::Command ).to receive(:new).with("rpm -q #{pkg}").and_return('')
48
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
48
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
49
49
  expect( instance.check_for_package(pkg) ).to be === true
50
50
  end
51
51
 
@@ -53,7 +53,7 @@ module Beaker
53
53
  @opts = {'platform' => 'eos-is-me'}
54
54
  pkg = 'eos-package'
55
55
  expect( Beaker::Command ).to receive(:new).with("rpm -q #{pkg}").and_return('')
56
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
56
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
57
57
  expect( instance.check_for_package(pkg) ).to be === true
58
58
  end
59
59
 
@@ -61,7 +61,7 @@ module Beaker
61
61
  @opts = {'platform' => 'el-is-me'}
62
62
  pkg = 'el_package'
63
63
  expect( Beaker::Command ).to receive(:new).with("rpm -q #{pkg}").and_return('')
64
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
64
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
65
65
  expect( instance.check_for_package(pkg) ).to be === true
66
66
  end
67
67
 
@@ -69,7 +69,7 @@ module Beaker
69
69
  @opts = {'platform' => 'debian-is-me'}
70
70
  pkg = 'debian_package'
71
71
  expect( Beaker::Command ).to receive(:new).with("dpkg -s #{pkg}").and_return('')
72
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
72
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
73
73
  expect( instance.check_for_package(pkg) ).to be === true
74
74
  end
75
75
 
@@ -77,7 +77,7 @@ module Beaker
77
77
  @opts = {'platform' => 'ubuntu-is-me'}
78
78
  pkg = 'ubuntu_package'
79
79
  expect( Beaker::Command ).to receive(:new).with("dpkg -s #{pkg}").and_return('')
80
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
80
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
81
81
  expect( instance.check_for_package(pkg) ).to be === true
82
82
  end
83
83
 
@@ -85,7 +85,7 @@ module Beaker
85
85
  @opts = {'platform' => 'cumulus-is-me'}
86
86
  pkg = 'cumulus_package'
87
87
  expect( Beaker::Command ).to receive(:new).with("dpkg -s #{pkg}").and_return('')
88
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
88
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
89
89
  expect( instance.check_for_package(pkg) ).to be === true
90
90
  end
91
91
 
@@ -93,7 +93,7 @@ module Beaker
93
93
  @opts = {'platform' => 'solaris-11-is-me'}
94
94
  pkg = 'solaris-11_package'
95
95
  expect( Beaker::Command ).to receive(:new).with("pkg info #{pkg}").and_return('')
96
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
96
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
97
97
  expect( instance.check_for_package(pkg) ).to be === true
98
98
  end
99
99
 
@@ -101,7 +101,7 @@ module Beaker
101
101
  @opts = {'platform' => 'solaris-10-is-me'}
102
102
  pkg = 'solaris-10_package'
103
103
  expect( Beaker::Command ).to receive(:new).with("pkginfo #{pkg}").and_return('')
104
- expect( instance ).to receive(:exec).with('', :acceptable_exit_codes => (0...127)).and_return(generate_result("hello", {:exit_code => 0}))
104
+ expect( instance ).to receive(:exec).with('', :accept_all_exit_codes => true).and_return(generate_result("hello", {:exit_code => 0}))
105
105
  expect( instance.check_for_package(pkg) ).to be === true
106
106
  end
107
107