Move nova to use OSDefaults - Part1

Switch @default_facts to OSDefaults

On going Part2 (new commit):
- nova_keystone_auth_spec.rb
- nova_migration_libvirt_spec.rb
- nova_network_spec.rb
- nova_objectstore_spec.rb
- nova_rabbitmq_spec.rb
- nova_scheduler_spec.rb
- nova_serial_proxy_spec.rb
- nova_spicehtml5_proxy_spec.rb
- nova_vnc_proxy_spec.rb
- nova_wsgi_apache_spec.rb

Change-Id: Ie53c2ebfa72710e248d14f5588bc632eeafc2d68
This commit is contained in:
Iury Gregory Melo Ferreira
2016-06-07 00:59:36 -03:00
parent 7bfc1807c1
commit 8c697c6349
17 changed files with 350 additions and 457 deletions

View File

@@ -10,10 +10,6 @@ describe 'nova::api' do
{ :admin_password => 'passw0rd' } { :admin_password => 'passw0rd' }
end end
let :facts do
@default_facts.merge({ :processorcount => 5 })
end
shared_examples 'nova-api' do shared_examples 'nova-api' do
context 'with default parameters' do context 'with default parameters' do
@@ -329,44 +325,25 @@ describe 'nova::api' do
end end
context 'on Debian platforms' do on_supported_os({
before do :supported_os => OSDefaults.get_supported_os
facts.merge!( }).each do |os,facts|
:osfamily => 'Debian', context "on #{os}" do
:operatingsystem => 'Debian', let (:facts) do
:operatingsystemrelease => '8.0', facts.merge!(OSDefaults.get_facts({ :processorcount => 5 }))
:operatingsystemmajrelease => '8',
:concat_basedir => '/var/lib/puppet/concat',
:fqdn => 'some.host.tld',
)
end end
let :platform_params do let (:platform_params) do
case facts[:osfamily]
when 'Debian'
{ :nova_api_package => 'nova-api', { :nova_api_package => 'nova-api',
:nova_api_service => 'nova-api' } :nova_api_service => 'nova-api' }
end when 'RedHat'
it_behaves_like 'nova-api'
end
context 'on RedHat platforms' do
before do
facts.merge!(
:osfamily => 'RedHat',
:operatingsystem => 'RedHat',
:operatingsystemrelease => '7.0',
:operatingsystemmajrelease => '7',
:concat_basedir => '/var/lib/puppet/concat',
:fqdn => 'some.host.tld',
)
end
let :platform_params do
{ :nova_api_package => 'openstack-nova-api', { :nova_api_package => 'openstack-nova-api',
:nova_api_service => 'openstack-nova-api' } :nova_api_service => 'openstack-nova-api' }
end end
end
it_behaves_like 'nova-api' it_behaves_like 'nova-api'
end end
end
end end

View File

@@ -29,29 +29,15 @@ describe 'nova::availability_zone' do
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ }).each do |os,facts|
:osfamily => 'Debian', context "on #{os}" do
:operatingsystem => 'Debian', let (:facts) do
:operatingsystemrelease => 'jessie', facts.merge!(OSDefaults.get_facts())
})
end end
it_configures 'nova::availability_zone' it_configures 'nova::availability_zone'
end end
context 'on Redhat platforms' do
let :facts do
@default_facts.merge({
:osfamily => 'RedHat',
:operatingsystemrelease => '7.1',
})
end end
it_configures 'nova::availability_zone'
end
end end

View File

@@ -62,20 +62,16 @@ describe 'nova::cache' do
end end
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
it_configures 'nova-cache' it_configures 'nova-cache'
end end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
it_configures 'nova-cache'
end end
end end

View File

@@ -138,38 +138,35 @@ describe 'nova::cells' do
it_configures 'nova-cells' it_configures 'nova-cells'
end end
on_supported_os({
context 'on Debian platforms' do :supported_os => OSDefaults.get_supported_os
let :facts do }).each do |os,facts|
@default_facts.merge({ :osfamily => 'Debian' }) context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let :platform_params do case facts[:osfamily]
when 'Debian'
let (:platform_params) do
{ {
:cells_package_name => 'nova-cells', :cells_package_name => 'nova-cells',
:cells_service_name => 'nova-cells' :cells_service_name => 'nova-cells'
} }
end end
it_configures 'a parent cell'
it_configures 'a parent cell with manage_service as false' it_configures 'a parent cell with manage_service as false'
it_configures 'a child cell' when 'RedHat'
end let (:platform_params) do
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
{ {
:cells_package_name => 'openstack-nova-cells', :cells_package_name => 'openstack-nova-cells',
:cells_service_name => 'openstack-nova-cells' :cells_service_name => 'openstack-nova-cells'
} }
end end
end
it_configures 'a parent cell' it_configures 'a parent cell'
it_configures 'a child cell' it_configures 'a child cell'
end end
end
end end

View File

@@ -6,25 +6,29 @@ describe 'nova::cert' do
'include nova' 'include nova'
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let (:platform_params) do
case facts[:osfamily]
when 'Debian'
it_behaves_like 'generic nova service', { it_behaves_like 'generic nova service', {
:name => 'nova-cert', :name => 'nova-cert',
:package_name => 'nova-cert', :package_name => 'nova-cert',
:service_name => 'nova-cert' } :service_name => 'nova-cert' }
end when 'RedHat'
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
it_behaves_like 'generic nova service', { it_behaves_like 'generic nova service', {
:name => 'nova-cert', :name => 'nova-cert',
:package_name => 'openstack-nova-cert', :package_name => 'openstack-nova-cert',
:service_name => 'openstack-nova-cert' } :service_name => 'openstack-nova-cert' }
end end
end
end
end
end end

View File

@@ -335,42 +335,38 @@ describe 'nova::compute::libvirt' do
end end
context 'on Debian platforms' do on_supported_os({
:supported_oos => OSDefaults.get_supported_os
}).each do |os,facts|
context "on #{os}" do
case [:osfamily]
when 'Debian'
case [:operatingsystem]
when 'Debian'
let (:facts) do let (:facts) do
@default_facts.merge({ facts.merge!(OSDefaults.get_facts({
:osfamily => 'Debian',
:operatingsystem => 'Debian',
:os_package_family => 'debian', :os_package_family => 'debian',
:operatingsystemmajrelease => '8' :operatingsystemmajrelease => '8'}))
})
end end
it_behaves_like 'debian-nova-compute-libvirt' it_behaves_like 'debian-nova-compute-libvirt'
end when 'Ubuntu'
context 'on Ubuntu platforms' do
let (:facts) do let (:facts) do
@default_facts.merge({ facts.merge!(OSDefaults.get_facts({
:osfamily => 'Debian',
:operatingsystem => 'Ubuntu',
:os_package_family => 'ubuntu', :os_package_family => 'ubuntu',
:operatingsystemmajrelease => '16.04' :operatingsystemmajrelease => '16.04'}))
})
end end
it_behaves_like 'debian-nova-compute-libvirt' it_behaves_like 'debian-nova-compute-libvirt'
end end
context 'on RedHat platforms' do when 'RedHat'
let (:facts) do let (:facts) do
@default_facts.merge({ facts.merge!(OSDefaults.get_facts({ :os_package_type => 'rpm' }))
:osfamily => 'RedHat',
:os_package_type => 'rpm',
})
end end
it_behaves_like 'redhat-nova-compute-libvirt' it_behaves_like 'redhat-nova-compute-libvirt'
end end
end
end
end end

View File

@@ -160,28 +160,24 @@ describe 'nova::compute::rbd' do
end end
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let :platform_params do let (:platform_params) do
{ :ceph_client_package => 'ceph'} case facts[:osfamily]
end when 'Debian'
{ :ceph_client_package => 'ceph' }
it_configures 'nova compute rbd' when 'RedHat'
end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
{ :ceph_client_package => 'ceph-common' } { :ceph_client_package => 'ceph-common' }
end end
end
it_configures 'nova compute rbd' it_configures 'nova compute rbd'
end end
end
end end

View File

@@ -221,30 +221,26 @@ describe 'nova::compute' do
end end
end end
on_supported_os({
context 'on Debian platforms' do :supported_os => OSDefaults.get_supported_os
let :facts do }).each do |os,facts|
@default_facts.merge({ :osfamily => 'Debian' }) context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let :platform_params do let (:platform_params) do
case facts[:osfamily]
when 'Debian'
{ :nova_compute_package => 'nova-compute', { :nova_compute_package => 'nova-compute',
:nova_compute_service => 'nova-compute' } :nova_compute_service => 'nova-compute' }
end when 'RedHat'
it_behaves_like 'nova-compute'
end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
{ :nova_compute_package => 'openstack-nova-compute', { :nova_compute_package => 'openstack-nova-compute',
:nova_compute_service => 'openstack-nova-compute' } :nova_compute_service => 'openstack-nova-compute' }
end end
end
it_behaves_like 'nova-compute' it_behaves_like 'nova-compute'
end end
end
end end

View File

@@ -73,30 +73,26 @@ describe 'nova::conductor' do
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let :platform_params do let (:platform_params) do
case facts[:osfamily]
when 'Debian'
{ :conductor_package_name => 'nova-conductor', { :conductor_package_name => 'nova-conductor',
:conductor_service_name => 'nova-conductor' } :conductor_service_name => 'nova-conductor' }
end when 'RedHat'
it_configures 'nova-conductor'
end
context 'on Redhat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
{ :conductor_package_name => 'openstack-nova-conductor', { :conductor_package_name => 'openstack-nova-conductor',
:conductor_service_name => 'openstack-nova-conductor' } :conductor_service_name => 'openstack-nova-conductor' }
end end
end
it_configures 'nova-conductor' it_configures 'nova-conductor'
end end
end
end end

View File

@@ -6,25 +6,29 @@ describe 'nova::consoleauth' do
'include nova' 'include nova'
end end
context 'on Debian platforms' do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'Debian' }) }).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let (:platform_params) do
case facts[:osfamily]
when 'Debian'
it_behaves_like 'generic nova service', { it_behaves_like 'generic nova service', {
:name => 'nova-consoleauth', :name => 'nova-consoleauth',
:package_name => 'nova-consoleauth', :package_name => 'nova-consoleauth',
:service_name => 'nova-consoleauth' } :service_name => 'nova-consoleauth' }
end when 'RedHat'
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
it_behaves_like 'generic nova service', { it_behaves_like 'generic nova service', {
:name => 'nova-consoleauth', :name => 'nova-consoleauth',
:package_name => 'openstack-nova-console', :package_name => 'openstack-nova-console',
:service_name => 'openstack-nova-consoleauth' } :service_name => 'openstack-nova-consoleauth' }
end end
end
end
end
end end

View File

@@ -3,7 +3,7 @@ require 'spec_helper'
describe 'nova::cron::archive_deleted_rows' do describe 'nova::cron::archive_deleted_rows' do
let :facts do let :facts do
@default_facts.merge({ :osfamily => 'Debian' }) OSDefaults.get_facts({ :osfamily => 'Debian' })
end end
let :params do let :params do
@@ -30,4 +30,5 @@ describe 'nova::cron::archive_deleted_rows' do
:require => 'Anchor[nova::dbsync::end]', :require => 'Anchor[nova::dbsync::end]',
) )
end end
end end

View File

@@ -2,6 +2,8 @@ require 'spec_helper'
describe 'nova::db::mysql_api' do describe 'nova::db::mysql_api' do
shared_examples_for 'nova::db::mysql_api' do
let :pre_condition do let :pre_condition do
'include mysql::server' 'include mysql::server'
end end
@@ -10,16 +12,10 @@ describe 'nova::db::mysql_api' do
{ :password => "qwerty" } { :password => "qwerty" }
end end
context 'on a Debian osfamily' do context 'with only required params' do
let :facts do
@default_facts.merge({ :osfamily => "Debian" })
end
context 'with only required parameters' do
let :params do let :params do
required_params required_params
end end
it { is_expected.to contain_openstacklib__db__mysql('nova_api').with( it { is_expected.to contain_openstacklib__db__mysql('nova_api').with(
:user => 'nova_api', :user => 'nova_api',
:password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601', :password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601',
@@ -28,23 +24,11 @@ describe 'nova::db::mysql_api' do
)} )}
end end
context 'when overriding charset' do context 'overriding allowed_hosts param to array' do
let :params do let :params do
{ :charset => 'latin1' }.merge(required_params) { :password => 'novapass',
end :allowed_hosts => ['127.0.0.1','%'],
}.merge(required_params)
it { is_expected.to contain_openstacklib__db__mysql('nova_api').with_charset(params[:charset]) }
end
end
context 'on a RedHat osfamily' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
context 'with only required parameters' do
let :params do
required_params
end end
it { is_expected.to contain_openstacklib__db__mysql('nova_api').with( it { is_expected.to contain_openstacklib__db__mysql('nova_api').with(
@@ -52,54 +36,50 @@ describe 'nova::db::mysql_api' do
:password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601', :password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601',
:charset => 'utf8', :charset => 'utf8',
:collate => 'utf8_general_ci', :collate => 'utf8_general_ci',
:allowed_hosts => ['127.0.0.1','%'],
)}
end
context 'overriding allowed_hosts param to string' do
let :params do
{ :password => 'novapass2',
:allowed_hosts => '192.168.1.1',
}.merge(required_params)
end
it { is_expected.to contain_openstacklib__db__mysql('nova_api').with(
:user => 'nova_api',
:password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601',
:charset => 'utf8',
:collate => 'utf8_general_ci',
:allowed_hosts => '192.168.1.1',
)} )}
end end
context 'when overriding charset' do context 'when overriding charset' do
let :params do let :params do
{ :charset => 'latin1' }.merge(required_params) { :password => 'novapass',
:charset => 'latin1',
}.merge(required_params)
end end
it { is_expected.to contain_openstacklib__db__mysql('nova_api').with_charset(params[:charset]) } it { is_expected.to contain_openstacklib__db__mysql('nova_api').with(
end :charset => 'latin1',
end )}
describe "overriding allowed_hosts param to array" do
let :facts do
@default_facts.merge({ :osfamily => "Debian" })
end
let :params do
{
:password => 'novapass',
:allowed_hosts => ['127.0.0.1','%']
}
end end
end end
describe "overriding allowed_hosts param to string" do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'RedHat' }) }).each do |os,facts|
end context "on #{os}" do
let :params do let (:facts) do
{ facts.merge!(OSDefaults.get_facts())
:password => 'novapass2',
:allowed_hosts => '192.168.1.1'
}
end end
it_configures 'nova::db::mysql_api'
end
end end
describe "overriding allowed_hosts param equals to host param " do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :params do
{
:password => 'novapass2',
:allowed_hosts => '127.0.0.1'
}
end
end
end end

View File

@@ -2,6 +2,8 @@ require 'spec_helper'
describe 'nova::db::mysql' do describe 'nova::db::mysql' do
shared_examples_for 'nova::db::mysql' do
let :pre_condition do let :pre_condition do
'include mysql::server' 'include mysql::server'
end end
@@ -10,16 +12,10 @@ describe 'nova::db::mysql' do
{ :password => "qwerty" } { :password => "qwerty" }
end end
context 'on a Debian osfamily' do context 'with only required params' do
let :facts do
@default_facts.merge({ :osfamily => "Debian" })
end
context 'with only required parameters' do
let :params do let :params do
required_params required_params
end end
it { is_expected.to contain_openstacklib__db__mysql('nova').with( it { is_expected.to contain_openstacklib__db__mysql('nova').with(
:user => 'nova', :user => 'nova',
:password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601', :password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601',
@@ -28,23 +24,11 @@ describe 'nova::db::mysql' do
)} )}
end end
context 'when overriding charset' do context 'overriding allowed_hosts param to array' do
let :params do let :params do
{ :charset => 'latin1' }.merge(required_params) { :password => 'novapass',
end :allowed_hosts => ['127.0.0.1','%'],
}.merge(required_params)
it { is_expected.to contain_openstacklib__db__mysql('nova').with_charset(params[:charset]) }
end
end
context 'on a RedHat osfamily' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
context 'with only required parameters' do
let :params do
required_params
end end
it { is_expected.to contain_openstacklib__db__mysql('nova').with( it { is_expected.to contain_openstacklib__db__mysql('nova').with(
@@ -52,54 +36,50 @@ describe 'nova::db::mysql' do
:password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601', :password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601',
:charset => 'utf8', :charset => 'utf8',
:collate => 'utf8_general_ci', :collate => 'utf8_general_ci',
:allowed_hosts => ['127.0.0.1','%'],
)}
end
context 'overriding allowed_hosts param to string' do
let :params do
{ :password => 'novapass2',
:allowed_hosts => '192.168.1.1',
}.merge(required_params)
end
it { is_expected.to contain_openstacklib__db__mysql('nova').with(
:user => 'nova',
:password_hash => '*AA1420F182E88B9E5F874F6FBE7459291E8F4601',
:charset => 'utf8',
:collate => 'utf8_general_ci',
:allowed_hosts => '192.168.1.1',
)} )}
end end
context 'when overriding charset' do context 'when overriding charset' do
let :params do let :params do
{ :charset => 'latin1' }.merge(required_params) { :password => 'novapass',
:charset => 'latin1',
}.merge(required_params)
end end
it { is_expected.to contain_openstacklib__db__mysql('nova').with_charset(params[:charset]) } it { is_expected.to contain_openstacklib__db__mysql('nova').with(
end :charset => 'latin1',
end )}
describe "overriding allowed_hosts param to array" do
let :facts do
@default_facts.merge({ :osfamily => "Debian" })
end
let :params do
{
:password => 'novapass',
:allowed_hosts => ['127.0.0.1','%']
}
end end
end end
describe "overriding allowed_hosts param to string" do on_supported_os({
let :facts do :supported_os => OSDefaults.get_supported_os
@default_facts.merge({ :osfamily => 'RedHat' }) }).each do |os,facts|
end context "on #{os}" do
let :params do let (:facts) do
{ facts.merge!(OSDefaults.get_facts())
:password => 'novapass2',
:allowed_hosts => '192.168.1.1'
}
end end
it_configures 'nova::db::mysql'
end
end end
describe "overriding allowed_hosts param equals to host param " do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :params do
{
:password => 'novapass2',
:allowed_hosts => '127.0.0.1'
}
end
end
end end

View File

@@ -78,21 +78,23 @@ describe 'nova::db' do
end end
end end
context 'on Debian platforms' do shared_examples_for 'nova::db RedHat' do
let :facts do context 'using pymysql driver' do
@default_facts.merge({ let :params do
:osfamily => 'Debian', { :database_connection => 'mysql+pymysql://user:pass@db/db', }
:operatingsystem => 'Debian',
:operatingsystemrelease => 'jessie',
})
end end
it_configures 'nova::db' it { is_expected.not_to contain_package('db_backend_package') }
end
end
shared_examples_for 'nova::db Debian' do
context 'using pymysql driver' do context 'using pymysql driver' do
let :params do let :params do
{ :database_connection => 'mysql+pymysql://user:pass@db/db', } { :database_connection => 'mysql+pymysql://user:pass@db/db', }
end end
it 'install the proper backend package' do it 'install the proper backend package' do
is_expected.to contain_package('db_backend_package').with( is_expected.to contain_package('db_backend_package').with(
:ensure => 'present', :ensure => 'present',
@@ -114,26 +116,20 @@ describe 'nova::db' do
:tag => ['openstack'], :tag => ['openstack'],
) )
end end
end
end end
context 'on Redhat platforms' do end
let :facts do
@default_facts.merge({ on_supported_os({
:osfamily => 'RedHat', :supported_os => OSDefaults.get_supported_os
:operatingsystemrelease => '7.1', }).each do |os,facts|
}) context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
it_configures 'nova::db' it_configures 'nova::db'
it_configures "nova::db #{facts[:osfamily]}"
context 'using pymysql driver' do
let :params do
{ :database_connection => 'mysql+pymysql://user:pass@db/db', }
end
it { is_expected.not_to contain_package('db_backend_package') }
end end
end end

View File

@@ -545,49 +545,31 @@ describe 'nova' do
end end
context 'on Debian platforms' do
let :facts do on_supported_os({
@default_facts.merge({ :supported_oos => OSDefaults.get_supported_os
:osfamily => 'Debian', }).each do |os,facts|
:operatingsystem => 'Debian' context "on #{os}" do
}) let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
let :platform_params do case facts[:osfamily]
when 'Debian'
let (:platform_params) do
{ :nova_common_package => 'nova-common', { :nova_common_package => 'nova-common',
:lock_path => '/var/lock/nova' } :lock_path => '/var/lock/nova' }
end end
when 'RedHat'
it_behaves_like 'nova' let (:platform_params) do
end
context 'on Ubuntu platforms' do
let :facts do
@default_facts.merge({
:osfamily => 'Debian',
:operatingsystem => 'Ubuntu'
})
end
let :platform_params do
{ :nova_common_package => 'nova-common',
:lock_path => '/var/lock/nova' }
end
it_behaves_like 'nova'
end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
let :platform_params do
{ :nova_common_package => 'openstack-nova-common', { :nova_common_package => 'openstack-nova-common',
:lock_path => '/var/lib/nova/tmp' } :lock_path => '/var/lib/nova/tmp' }
end end
end
it_behaves_like 'nova' it_behaves_like 'nova'
end end
end
end end

View File

@@ -120,20 +120,17 @@ describe 'nova::logging' do
} }
end end
context 'on Debian platforms' do
let :facts do on_supported_os({
@default_facts.merge({ :osfamily => 'Debian' }) :supported_os => OSDefaults.get_supported_os
}).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end end
it_configures 'nova-logging' it_configures 'nova-logging'
end end
context 'on RedHat platforms' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
it_configures 'nova-logging'
end end
end end

View File

@@ -2,11 +2,7 @@ require 'spec_helper'
describe 'test-001.example.org' do describe 'test-001.example.org' do
context 'on RedHat platforms' do shared_examples_for 'both services' do
let :facts do
@default_facts.merge({ :osfamily => 'RedHat' })
end
# Bug #1278452 # Bug #1278452
it 'nova::consoleauth and nova::spicehtml5proxy do not conflict' do it 'nova::consoleauth and nova::spicehtml5proxy do not conflict' do
is_expected.to contain_class('nova::consoleauth') is_expected.to contain_class('nova::consoleauth')
@@ -16,4 +12,17 @@ describe 'test-001.example.org' do
is_expected.to contain_nova__generic_service('spicehtml5proxy') is_expected.to contain_nova__generic_service('spicehtml5proxy')
end end
end end
on_supported_os({
:supported_os => OSDefaults.get_supported_os
}).each do |os,facts|
context "on #{os}" do
let (:facts) do
facts.merge!(OSDefaults.get_facts())
end
it_configures 'both services'
end
end
end end