quota: Support unified limits options
Depends-on: https://review.opendev.org/924025 Change-Id: I0f749c25451ca7da82a1195265bc84450338c0eb
This commit is contained in:
parent
143ba1e0bf
commit
b7a90e0cf9
@ -54,40 +54,53 @@
|
|||||||
# Defaults to $facts['os_service_default']
|
# Defaults to $facts['os_service_default']
|
||||||
#
|
#
|
||||||
# [*count_usage_from_placement*]
|
# [*count_usage_from_placement*]
|
||||||
# (optional Enable the counting of quota usage from the placement service.
|
# (optional) Enable the counting of quota usage from the placement service.
|
||||||
|
# Defaults to $facts['os_service_default']
|
||||||
|
#
|
||||||
|
# [*unified_limits_resource_strategy*]
|
||||||
|
# (optional) Specify the semantics of the ``unified_limits_resource_list``.
|
||||||
|
# Defaults to $facts['os_service_default']
|
||||||
|
#
|
||||||
|
# [*unified_limits_resource_list*]
|
||||||
|
# (optional) Specify a list of resources to require or ignore registered
|
||||||
|
# limits.
|
||||||
# Defaults to $facts['os_service_default']
|
# Defaults to $facts['os_service_default']
|
||||||
#
|
#
|
||||||
class nova::quota(
|
class nova::quota(
|
||||||
$driver = $facts['os_service_default'],
|
$driver = $facts['os_service_default'],
|
||||||
$instances = $facts['os_service_default'],
|
$instances = $facts['os_service_default'],
|
||||||
$cores = $facts['os_service_default'],
|
$cores = $facts['os_service_default'],
|
||||||
$ram = $facts['os_service_default'],
|
$ram = $facts['os_service_default'],
|
||||||
$metadata_items = $facts['os_service_default'],
|
$metadata_items = $facts['os_service_default'],
|
||||||
$injected_files = $facts['os_service_default'],
|
$injected_files = $facts['os_service_default'],
|
||||||
$injected_file_content_bytes = $facts['os_service_default'],
|
$injected_file_content_bytes = $facts['os_service_default'],
|
||||||
$injected_file_path_length = $facts['os_service_default'],
|
$injected_file_path_length = $facts['os_service_default'],
|
||||||
$key_pairs = $facts['os_service_default'],
|
$key_pairs = $facts['os_service_default'],
|
||||||
$server_groups = $facts['os_service_default'],
|
$server_groups = $facts['os_service_default'],
|
||||||
$server_group_members = $facts['os_service_default'],
|
$server_group_members = $facts['os_service_default'],
|
||||||
$recheck_quota = $facts['os_service_default'],
|
$recheck_quota = $facts['os_service_default'],
|
||||||
$count_usage_from_placement = $facts['os_service_default'],
|
$count_usage_from_placement = $facts['os_service_default'],
|
||||||
|
$unified_limits_resource_strategy = $facts['os_service_default'],
|
||||||
|
$unified_limits_resource_list = $facts['os_service_default'],
|
||||||
) {
|
) {
|
||||||
|
|
||||||
include nova::deps
|
include nova::deps
|
||||||
|
|
||||||
nova_config {
|
nova_config {
|
||||||
'quota/driver': value => $driver;
|
'quota/driver': value => $driver;
|
||||||
'quota/instances': value => $instances;
|
'quota/instances': value => $instances;
|
||||||
'quota/cores': value => $cores;
|
'quota/cores': value => $cores;
|
||||||
'quota/ram': value => $ram;
|
'quota/ram': value => $ram;
|
||||||
'quota/metadata_items': value => $metadata_items;
|
'quota/metadata_items': value => $metadata_items;
|
||||||
'quota/injected_files': value => $injected_files;
|
'quota/injected_files': value => $injected_files;
|
||||||
'quota/injected_file_content_bytes': value => $injected_file_content_bytes;
|
'quota/injected_file_content_bytes': value => $injected_file_content_bytes;
|
||||||
'quota/injected_file_path_length': value => $injected_file_path_length;
|
'quota/injected_file_path_length': value => $injected_file_path_length;
|
||||||
'quota/key_pairs': value => $key_pairs;
|
'quota/key_pairs': value => $key_pairs;
|
||||||
'quota/server_groups': value => $server_groups;
|
'quota/server_groups': value => $server_groups;
|
||||||
'quota/server_group_members': value => $server_group_members;
|
'quota/server_group_members': value => $server_group_members;
|
||||||
'quota/recheck_quota': value => $recheck_quota;
|
'quota/recheck_quota': value => $recheck_quota;
|
||||||
'quota/count_usage_from_placement': value => $count_usage_from_placement;
|
'quota/count_usage_from_placement': value => $count_usage_from_placement;
|
||||||
|
'quota/unified_limits_resource_strategy': value => $unified_limits_resource_strategy;
|
||||||
|
'quota/unified_limits_resource_list': value => join(any2array($unified_limits_resource_list), ',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,7 @@
|
|||||||
|
---
|
||||||
|
features:
|
||||||
|
- |
|
||||||
|
The following parameters have been added to the ``nova::quota`` class.
|
||||||
|
|
||||||
|
- ``unified_limits_resource_strategy``
|
||||||
|
- ``unified_limits_resource_list``
|
@ -7,19 +7,21 @@ describe 'nova::quota' do
|
|||||||
|
|
||||||
let :default_params do
|
let :default_params do
|
||||||
{
|
{
|
||||||
:driver => '<SERVICE DEFAULT>',
|
:driver => '<SERVICE DEFAULT>',
|
||||||
:instances => '<SERVICE DEFAULT>',
|
:instances => '<SERVICE DEFAULT>',
|
||||||
:cores => '<SERVICE DEFAULT>',
|
:cores => '<SERVICE DEFAULT>',
|
||||||
:ram => '<SERVICE DEFAULT>',
|
:ram => '<SERVICE DEFAULT>',
|
||||||
:metadata_items => '<SERVICE DEFAULT>',
|
:metadata_items => '<SERVICE DEFAULT>',
|
||||||
:injected_files => '<SERVICE DEFAULT>',
|
:injected_files => '<SERVICE DEFAULT>',
|
||||||
:injected_file_content_bytes => '<SERVICE DEFAULT>',
|
:injected_file_content_bytes => '<SERVICE DEFAULT>',
|
||||||
:injected_file_path_length => '<SERVICE DEFAULT>',
|
:injected_file_path_length => '<SERVICE DEFAULT>',
|
||||||
:key_pairs => '<SERVICE DEFAULT>',
|
:key_pairs => '<SERVICE DEFAULT>',
|
||||||
:server_groups => '<SERVICE DEFAULT>',
|
:server_groups => '<SERVICE DEFAULT>',
|
||||||
:server_group_members => '<SERVICE DEFAULT>',
|
:server_group_members => '<SERVICE DEFAULT>',
|
||||||
:recheck_quota => '<SERVICE DEFAULT>',
|
:recheck_quota => '<SERVICE DEFAULT>',
|
||||||
:count_usage_from_placement => '<SERVICE DEFAULT>',
|
:count_usage_from_placement => '<SERVICE DEFAULT>',
|
||||||
|
:unified_limits_resource_strategy => '<SERVICE DEFAULT>',
|
||||||
|
:unified_limits_resource_list => '<SERVICE DEFAULT>',
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -43,19 +45,21 @@ describe 'nova::quota' do
|
|||||||
context 'with provided parameters' do
|
context 'with provided parameters' do
|
||||||
before do
|
before do
|
||||||
params.merge!({
|
params.merge!({
|
||||||
:driver => 'nova.quota.DbQuotaDriver',
|
:driver => 'nova.quota.DbQuotaDriver',
|
||||||
:instances => 20,
|
:instances => 20,
|
||||||
:cores => 40,
|
:cores => 40,
|
||||||
:ram => 102400,
|
:ram => 102400,
|
||||||
:metadata_items => 256,
|
:metadata_items => 256,
|
||||||
:injected_files => 10,
|
:injected_files => 10,
|
||||||
:injected_file_content_bytes => 20480,
|
:injected_file_content_bytes => 20480,
|
||||||
:injected_file_path_length => 254,
|
:injected_file_path_length => 254,
|
||||||
:key_pairs => 200,
|
:key_pairs => 200,
|
||||||
:server_groups => 20,
|
:server_groups => 20,
|
||||||
:server_group_members => 20,
|
:server_group_members => 20,
|
||||||
:recheck_quota => true,
|
:recheck_quota => true,
|
||||||
:count_usage_from_placement => false,
|
:count_usage_from_placement => false,
|
||||||
|
:unified_limits_resource_strategy => 'require',
|
||||||
|
:unified_limits_resource_list => 'servers',
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user