Skip to content

Commit 2bdd46a

Browse files
ekohlevgeni
authored andcommitted
Avoid unless: kwarg on upgrade acceptance test
With the unless keyword argument on a describe block the content is still parsed by Ruby. This means some functions are still executed. It also ends up triggering the unsupported version exception on Archlinux because the collection is unrecognized, even though the test really isn't run. By using the real Ruby unless statement this is all avoided.
1 parent 52a3f48 commit 2bdd46a

File tree

1 file changed

+67
-65
lines changed

1 file changed

+67
-65
lines changed
Lines changed: 67 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -1,84 +1,86 @@
11
require 'spec_helper_acceptance'
22

3-
describe 'Scenario: minor version upgrade', unless: unsupported_puppetserver do
4-
before(:all) do
5-
if check_for_package(default, 'puppetserver')
6-
on default, 'puppet resource package puppetserver ensure=purged'
7-
on default, 'rm -rf /etc/sysconfig/puppetserver /etc/puppetlabs/puppetserver'
8-
on default, 'rm -rf /etc/puppetlabs/puppet/ssl'
9-
end
3+
unless unsupported_puppetserver
4+
describe 'Scenario: minor version upgrade' do
5+
before(:all) do
6+
if check_for_package(default, 'puppetserver')
7+
on default, 'puppet resource package puppetserver ensure=purged'
8+
on default, 'rm -rf /etc/sysconfig/puppetserver /etc/puppetlabs/puppetserver'
9+
on default, 'rm -rf /etc/puppetlabs/puppet/ssl'
10+
end
1011

11-
# puppetserver won't start with low memory
12-
memoryfree_mb = fact('memoryfree_mb').to_i
13-
raise 'At least 256MB free memory required' if memoryfree_mb < 256
14-
end
12+
# puppetserver won't start with low memory
13+
memoryfree_mb = fact('memoryfree_mb').to_i
14+
raise 'At least 256MB free memory required' if memoryfree_mb < 256
15+
end
1516

16-
case ENV['BEAKER_PUPPET_COLLECTION']
17-
when 'puppet7'
18-
from_version = '7.0.0'
19-
to_version = '7.2.0'
20-
else
21-
raise 'Unsupported Puppet collection'
22-
end
17+
case ENV['BEAKER_PUPPET_COLLECTION']
18+
when 'puppet7'
19+
from_version = '7.0.0'
20+
to_version = '7.2.0'
21+
else
22+
raise 'Unsupported Puppet collection'
23+
end
2324

24-
case fact('osfamily')
25-
when 'Debian'
26-
from_version_exact = "#{from_version}-1#{fact('os.distro.codename')}"
27-
to_version_exact = "#{to_version}-1#{fact('os.distro.codename')}"
28-
else
29-
from_version_exact = from_version
30-
to_version_exact = to_version
31-
end
25+
case fact('osfamily')
26+
when 'Debian'
27+
from_version_exact = "#{from_version}-1#{fact('os.distro.codename')}"
28+
to_version_exact = "#{to_version}-1#{fact('os.distro.codename')}"
29+
else
30+
from_version_exact = from_version
31+
to_version_exact = to_version
32+
end
3233

33-
context "install #{from_version}" do
34-
it_behaves_like 'an idempotent resource' do
35-
let(:manifest) do
36-
<<-EOS
37-
class { 'puppet':
38-
server => true,
39-
server_version => '#{from_version_exact}',
40-
}
41-
EOS
34+
context "install #{from_version}" do
35+
it_behaves_like 'an idempotent resource' do
36+
let(:manifest) do
37+
<<-EOS
38+
class { 'puppet':
39+
server => true,
40+
server_version => '#{from_version_exact}',
41+
}
42+
EOS
43+
end
4244
end
43-
end
4445

45-
describe command('puppetserver --version') do
46-
its(:stdout) { is_expected.to match("puppetserver version: #{from_version}\n") }
47-
end
46+
describe command('puppetserver --version') do
47+
its(:stdout) { is_expected.to match("puppetserver version: #{from_version}\n") }
48+
end
4849

49-
describe service('puppetserver') do
50-
it { is_expected.to be_enabled }
51-
it { is_expected.to be_running }
52-
end
50+
describe service('puppetserver') do
51+
it { is_expected.to be_enabled }
52+
it { is_expected.to be_running }
53+
end
5354

54-
describe port('8140') do
55-
it { is_expected.to be_listening }
55+
describe port('8140') do
56+
it { is_expected.to be_listening }
57+
end
5658
end
57-
end
5859

59-
context "upgrade to #{to_version}" do
60-
it_behaves_like 'an idempotent resource' do
61-
let(:manifest) do
62-
<<-EOS
63-
class { 'puppet':
64-
server => true,
65-
server_version => '#{to_version_exact}',
66-
}
67-
EOS
60+
context "upgrade to #{to_version}" do
61+
it_behaves_like 'an idempotent resource' do
62+
let(:manifest) do
63+
<<-EOS
64+
class { 'puppet':
65+
server => true,
66+
server_version => '#{to_version_exact}',
67+
}
68+
EOS
69+
end
6870
end
69-
end
7071

71-
describe command('puppetserver --version') do
72-
its(:stdout) { is_expected.to match("puppetserver version: #{to_version}\n") }
73-
end
72+
describe command('puppetserver --version') do
73+
its(:stdout) { is_expected.to match("puppetserver version: #{to_version}\n") }
74+
end
7475

75-
describe service('puppetserver') do
76-
it { is_expected.to be_enabled }
77-
it { is_expected.to be_running }
78-
end
76+
describe service('puppetserver') do
77+
it { is_expected.to be_enabled }
78+
it { is_expected.to be_running }
79+
end
7980

80-
describe port('8140') do
81-
it { is_expected.to be_listening }
81+
describe port('8140') do
82+
it { is_expected.to be_listening }
83+
end
8284
end
8385
end
8486
end

0 commit comments

Comments
 (0)