Add support for quota parameters
This patch introduces the new ``aodh::quota`` class, to support parameters which define quota amount in aodh. Change-Id: Ice37e64bddb0e128f3fc98de7b5fe35bd08e5f36
This commit is contained in:
parent
e7c0c5042f
commit
895c8b4037
|
@ -0,0 +1,32 @@
|
||||||
|
# The aodh::quota class helps configure quota settings
|
||||||
|
#
|
||||||
|
# == Params
|
||||||
|
#
|
||||||
|
# [*user_alarm_quota*]
|
||||||
|
# (optional) Maximum number of alarms defined for a user.
|
||||||
|
# Defaults to $:os_service_default.
|
||||||
|
#
|
||||||
|
# [*project_alarm_quota*]
|
||||||
|
# (optional) Maximum number of alarms defined for a project.
|
||||||
|
# Defaults to $:os_service_default.
|
||||||
|
#
|
||||||
|
# [*alarm_max_actions*]
|
||||||
|
# (optional) Maximum count of actions for each state of an alarm.
|
||||||
|
# Defaults to $:os_service_default.
|
||||||
|
#
|
||||||
|
class aodh::quota (
|
||||||
|
$user_alarm_quota = $::os_service_default,
|
||||||
|
$project_alarm_quota = $::os_service_default,
|
||||||
|
$alarm_max_actions = $::os_service_default,
|
||||||
|
) {
|
||||||
|
|
||||||
|
include aodh::deps
|
||||||
|
include aodh::params
|
||||||
|
|
||||||
|
aodh_config {
|
||||||
|
'api/user_alarm_quota': value => $user_alarm_quota;
|
||||||
|
'api/project_alarm_quota': value => $project_alarm_quota;
|
||||||
|
'api/alarm_max_actions': value => $alarm_max_actions;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
The ``aodh::quota`` class has been added to support parameters to define
|
||||||
|
quota.
|
|
@ -0,0 +1,48 @@
|
||||||
|
require 'spec_helper'
|
||||||
|
|
||||||
|
describe 'aodh::quota' do
|
||||||
|
|
||||||
|
shared_examples_for 'aodh::quota' do
|
||||||
|
|
||||||
|
context 'with default parameters' do
|
||||||
|
let :params do
|
||||||
|
{}
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'configures default values' do
|
||||||
|
is_expected.to contain_aodh_config('api/user_alarm_quota').with_value('<SERVICE DEFAULT>')
|
||||||
|
is_expected.to contain_aodh_config('api/project_alarm_quota').with_value('<SERVICE DEFAULT>')
|
||||||
|
is_expected.to contain_aodh_config('api/alarm_max_actions').with_value('<SERVICE DEFAULT>')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context 'when specific parameters' do
|
||||||
|
let :params do
|
||||||
|
{
|
||||||
|
:user_alarm_quota => 10,
|
||||||
|
:project_alarm_quota => 20,
|
||||||
|
:alarm_max_actions => 5,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
it 'configures specified values' do
|
||||||
|
is_expected.to contain_aodh_config('api/user_alarm_quota').with_value(10)
|
||||||
|
is_expected.to contain_aodh_config('api/project_alarm_quota').with_value(20)
|
||||||
|
is_expected.to contain_aodh_config('api/alarm_max_actions').with_value(5)
|
||||||
|
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 'aodh::quota'
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
Loading…
Reference in New Issue