3bf5d9ed3c
This refactors resource dependencies to improve the following points. - Avoid unnecessary dependencies across services. For example aodh service does not require cinder db. - Restart only api service when config files like paste.ini, which are used only be api service is changed. Change-Id: Ib89091baaf9aba0809c2e9405389545168b755ec
88 lines
2.6 KiB
Ruby
88 lines
2.6 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe 'gnocchi::policy' do
|
|
shared_examples 'gnocchi::policy' do
|
|
|
|
context 'setup policy with parameters' do
|
|
let :params do
|
|
{
|
|
:enforce_scope => false,
|
|
:enforce_new_defaults => false,
|
|
:policy_path => '/etc/gnocchi/policy.yaml',
|
|
:policy_default_rule => 'default',
|
|
:policy_dirs => '/etc/gnocchi/policy.d',
|
|
:policies => {
|
|
'context_is_admin' => {
|
|
'key' => 'context_is_admin',
|
|
'value' => 'foo:bar'
|
|
}
|
|
}
|
|
}
|
|
end
|
|
|
|
it 'set up the policies' do
|
|
is_expected.to contain_openstacklib__policy('/etc/gnocchi/policy.yaml').with(
|
|
:policies => {
|
|
'context_is_admin' => {
|
|
'key' => 'context_is_admin',
|
|
'value' => 'foo:bar'
|
|
}
|
|
},
|
|
:policy_path => '/etc/gnocchi/policy.yaml',
|
|
:file_user => 'root',
|
|
:file_group => 'gnocchi',
|
|
:file_format => 'yaml',
|
|
:purge_config => false,
|
|
)
|
|
is_expected.to contain_oslo__policy('gnocchi_config').with(
|
|
:enforce_scope => false,
|
|
:enforce_new_defaults => false,
|
|
:policy_file => '/etc/gnocchi/policy.yaml',
|
|
:policy_default_rule => 'default',
|
|
:policy_dirs => '/etc/gnocchi/policy.d',
|
|
)
|
|
end
|
|
end
|
|
|
|
context 'with empty policies and purge_config enabled' do
|
|
let :params do
|
|
{
|
|
:enforce_scope => false,
|
|
:enforce_new_defaults => false,
|
|
:policy_path => '/etc/gnocchi/policy.yaml',
|
|
:policies => {},
|
|
:purge_config => true,
|
|
}
|
|
end
|
|
|
|
it 'set up the policies' do
|
|
is_expected.to contain_openstacklib__policy('/etc/gnocchi/policy.yaml').with(
|
|
:policies => {},
|
|
:policy_path => '/etc/gnocchi/policy.yaml',
|
|
:file_user => 'root',
|
|
:file_group => 'gnocchi',
|
|
:file_format => 'yaml',
|
|
:purge_config => true,
|
|
)
|
|
is_expected.to contain_oslo__policy('gnocchi_config').with(
|
|
:enforce_scope => false,
|
|
:enforce_new_defaults => false,
|
|
:policy_file => '/etc/gnocchi/policy.yaml',
|
|
)
|
|
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_behaves_like 'gnocchi::policy'
|
|
end
|
|
end
|
|
end
|