5c8ee34222
Some users wish to override the default package provider by their own. Tag all packages with the 'openstack' and its corresponding service name to allow mass resource attributes override using resource collectors. Change-Id: I3a8041be7b9fcb304d2cf0dbdd4a021cd8594c02 Closes-bug: #1391209
58 lines
1.6 KiB
Ruby
58 lines
1.6 KiB
Ruby
shared_examples_for "a Puppet::Error" do |description|
|
|
it "with message matching #{description.inspect}" do
|
|
expect { should have_class_count(1) }.to raise_error(Puppet::Error, description)
|
|
end
|
|
end
|
|
|
|
shared_examples 'generic nova service' do |service|
|
|
|
|
context 'with default parameters' do
|
|
it 'installs package and service' do
|
|
should contain_package(service[:name]).with({
|
|
:name => service[:package_name],
|
|
:ensure => 'present',
|
|
:notify => "Service[#{service[:name]}]",
|
|
:tag => ['openstack', 'nova']
|
|
})
|
|
should contain_service(service[:name]).with({
|
|
:name => service[:service_name],
|
|
:ensure => 'stopped',
|
|
:hasstatus => true,
|
|
:enable => false
|
|
})
|
|
end
|
|
end
|
|
|
|
context 'with overridden parameters' do
|
|
let :params do
|
|
{ :enabled => true,
|
|
:ensure_package => '2012.1-2' }
|
|
end
|
|
|
|
it 'installs package and service' do
|
|
should contain_package(service[:name]).with({
|
|
:name => service[:package_name],
|
|
:ensure => '2012.1-2',
|
|
:notify => "Service[#{service[:name]}]"
|
|
})
|
|
should contain_service(service[:name]).with({
|
|
:name => service[:service_name],
|
|
:ensure => 'running',
|
|
:hasstatus => true,
|
|
:enable => true
|
|
})
|
|
end
|
|
end
|
|
|
|
context 'while not managing service state' do
|
|
let :params do
|
|
{ :enabled => false,
|
|
:manage_service => false }
|
|
end
|
|
|
|
it 'does not control service state' do
|
|
should contain_service(service[:name]).without_ensure
|
|
end
|
|
end
|
|
end
|