Fix api config

API configuration options have been moved to the 'api' group. They
should no longer be included in the 'DEFAULT' group. The following
options affected by this change:
``auth_strategy``
``use_forwarded_for``
``vendordata_providers``
``vendordata_dynamic_targets``
``vendordata_dynamic_ssl_certfile``
``vendordata_dynamic_connect_timeout``
``vendordata_dynamic_read_timeout``
``metadata_cache_expiration``
``vendordata_jsonfile_path``
``max_limit`` (was ``osapi_max_limit``)
``compute_link_prefix`` (was ``osapi_compute_link_prefix``)
``glance_link_prefix`` (was ``osapi_glance_link_prefix``)
``allow_instance_snapshots``
``hide_server_address_states`` (was ``osapi_hide_server_address_states``)
``fping_path``
``enable_instance_password``

Change-Id: I0cf1920f4e9e3e66eb61d95fe124de40e9c0298c
Closes-Bug: #1658087
This commit is contained in:
ZhongShengping 2017-01-20 21:51:01 +08:00
parent 861cf4fd57
commit c72132ae2d
5 changed files with 139 additions and 65 deletions

View File

@ -159,21 +159,21 @@
# once connected.
# Defaults to $::os_service_default
#
# [*osapi_max_limit*]
# [*max_limit*]
# (optional) This option is limit the maximum number of items in a single response.
# Defaults to $::os_service_default
#
# [*osapi_compute_link_prefix*]
# [*compute_link_prefix*]
# (optional) This string is prepended to the normal URL that is returned in links
# to the OpenStack Compute API.
# Defaults to $::os_service_default
#
# [*osapi_glance_link_prefix*]
# [*glance_link_prefix*]
# (optional) This string is prepended to the normal URL that is returned in links
# to Glance resources.
# Defaults to $::os_service_default
#
# [*osapi_hide_server_address_states*]
# [*hide_server_address_states*]
# (optional) This option is a list of all instance states for which network address
# information should not be returned from the API.
# Defaults to $::os_service_default
@ -212,6 +212,25 @@
# Class instead.
# Defaults to undef
#
# [*osapi_max_limit*]
# (optional) This option is limit the maximum number of items in a single response.
# Defaults to undef
#
# [*osapi_compute_link_prefix*]
# (optional) This string is prepended to the normal URL that is returned in links
# to the OpenStack Compute API.
# Defaults to undef
#
# [*osapi_glance_link_prefix*]
# (optional) This string is prepended to the normal URL that is returned in links
# to Glance resources.
# Defaults to undef
#
# [*osapi_hide_server_address_states*]
# (optional) This option is a list of all instance states for which network address
# information should not be returned from the API.
# Defaults to undef
#
class nova::api(
$enabled = true,
$manage_service = true,
@ -245,10 +264,10 @@ class nova::api(
$vendordata_dynamic_targets = $::os_service_default,
$vendordata_dynamic_connect_timeout = $::os_service_default,
$vendordata_dynamic_read_timeout = $::os_service_default,
$osapi_max_limit = $::os_service_default,
$osapi_compute_link_prefix = $::os_service_default,
$osapi_glance_link_prefix = $::os_service_default,
$osapi_hide_server_address_states = $::os_service_default,
$max_limit = $::os_service_default,
$compute_link_prefix = $::os_service_default,
$glance_link_prefix = $::os_service_default,
$hide_server_address_states = $::os_service_default,
$allow_instance_snapshots = $::os_service_default,
$enable_network_quota = $::os_service_default,
$enable_instance_password = $::os_service_default,
@ -257,6 +276,10 @@ class nova::api(
$allow_resize_to_same_host = false,
# DEPRECATED PARAMETER
$conductor_workers = undef,
$osapi_max_limit = undef,
$osapi_compute_link_prefix = undef,
$osapi_glance_link_prefix = undef,
$osapi_hide_server_address_states = undef,
) inherits nova::params {
include ::nova::deps
@ -283,6 +306,34 @@ class nova::api(
}
}
if $osapi_max_limit {
warning('The osapi_max_limit parameter is deprecated. Please use max_limit instead')
$max_limit_real = $osapi_max_limit
} else {
$max_limit_real = $max_limit
}
if $osapi_compute_link_prefix {
warning('The osapi_compute_link_prefix parameter is deprecated. Please use compute_link_prefix instead')
$compute_link_prefix_real = $osapi_compute_link_prefix
} else {
$compute_link_prefix_real = $compute_link_prefix
}
if $osapi_glance_link_prefix {
warning('The osapi_glance_link_prefix parameter is deprecated. Please use glance_link_prefix instead')
$glance_link_prefix_real = $osapi_glance_link_prefix
} else {
$glance_link_prefix_real = $glance_link_prefix
}
if $osapi_hide_server_address_states {
warning('The osapi_hide_server_address_states parameter is deprecated. Please use hide_server_address_states instead')
$hide_server_address_states_real = $osapi_hide_server_address_states
} else {
$hide_server_address_states_real = $hide_server_address_states
}
if !is_service_default($vendordata_providers) and !empty($vendordata_providers){
validate_array($vendordata_providers)
$vendordata_providers_real = join($vendordata_providers, ',')
@ -343,32 +394,32 @@ as a standalone service, or httpd for being run by a httpd server")
}
nova_config {
'wsgi/api_paste_config': value => $api_paste_config;
'DEFAULT/enabled_apis': value => join($enabled_apis_real, ',');
'DEFAULT/osapi_compute_listen': value => $api_bind_address;
'DEFAULT/metadata_listen': value => $metadata_listen;
'DEFAULT/metadata_listen_port': value => $metadata_listen_port;
'DEFAULT/osapi_compute_listen_port': value => $osapi_compute_listen_port;
'DEFAULT/osapi_volume_listen': value => $api_bind_address;
'DEFAULT/osapi_compute_workers': value => $osapi_compute_workers;
'DEFAULT/metadata_workers': value => $metadata_workers;
'DEFAULT/use_forwarded_for': value => $use_forwarded_for;
'DEFAULT/default_floating_pool': value => $default_floating_pool;
'DEFAULT/fping_path': value => $fping_path;
'DEFAULT/metadata_cache_expiration': value => $metadata_cache_expiration;
'DEFAULT/vendordata_jsonfile_path': value => $vendordata_jsonfile_path;
'DEFAULT/vendordata_providers': value => $vendordata_providers_real;
'DEFAULT/vendordata_dynamic_targets': value => $vendordata_dynamic_targets_real;
'DEFAULT/vendordata_dynamic_connect_timeout': value => $vendordata_dynamic_connect_timeout;
'DEFAULT/vendordata_dynamic_read_timeout': value => $vendordata_dynamic_read_timeout;
'DEFAULT/osapi_max_limit': value => $osapi_max_limit;
'DEFAULT/osapi_compute_link_prefix': value => $osapi_compute_link_prefix;
'DEFAULT/osapi_glance_link_prefix': value => $osapi_glance_link_prefix;
'DEFAULT/osapi_hide_server_address_states': value => $osapi_hide_server_address_states;
'DEFAULT/allow_instance_snapshots': value => $allow_instance_snapshots;
'DEFAULT/enable_network_quota': value => $enable_network_quota;
'DEFAULT/enable_instance_password': value => $enable_instance_password;
'DEFAULT/password_length': value => $password_length;
'wsgi/api_paste_config': value => $api_paste_config;
'DEFAULT/enabled_apis': value => join($enabled_apis_real, ',');
'DEFAULT/osapi_compute_listen': value => $api_bind_address;
'DEFAULT/metadata_listen': value => $metadata_listen;
'DEFAULT/metadata_listen_port': value => $metadata_listen_port;
'DEFAULT/osapi_compute_listen_port': value => $osapi_compute_listen_port;
'DEFAULT/osapi_volume_listen': value => $api_bind_address;
'DEFAULT/osapi_compute_workers': value => $osapi_compute_workers;
'DEFAULT/metadata_workers': value => $metadata_workers;
'DEFAULT/default_floating_pool': value => $default_floating_pool;
'DEFAULT/enable_network_quota': value => $enable_network_quota;
'DEFAULT/password_length': value => $password_length;
'api/metadata_cache_expiration': value => $metadata_cache_expiration;
'api/use_forwarded_for': value => $use_forwarded_for;
'api/fping_path': value => $fping_path;
'api/vendordata_jsonfile_path': value => $vendordata_jsonfile_path;
'api/vendordata_providers': value => $vendordata_providers_real;
'api/vendordata_dynamic_targets': value => $vendordata_dynamic_targets_real;
'api/vendordata_dynamic_connect_timeout': value => $vendordata_dynamic_connect_timeout;
'api/vendordata_dynamic_read_timeout': value => $vendordata_dynamic_read_timeout;
'api/max_limit': value => $max_limit_real;
'api/compute_link_prefix': value => $compute_link_prefix_real;
'api/glance_link_prefix': value => $glance_link_prefix_real;
'api/hide_server_address_states': value => $hide_server_address_states_real;
'api/allow_instance_snapshots': value => $allow_instance_snapshots;
'api/enable_instance_password': value => $enable_instance_password;
}
oslo::middleware {'nova_config':

View File

@ -649,9 +649,9 @@ but should be one of: ssh-rsa, ssh-dsa, ssh-ecdsa.")
ensure_resource('nova_config', 'DEFAULT/disk_allocation_ratio', { value => $real_disk_allocation_ratio })
nova_config {
'DEFAULT/image_service': value => $image_service;
'DEFAULT/auth_strategy': value => $auth_strategy;
'DEFAULT/host': value => $host;
'api/auth_strategy': value => $auth_strategy;
'DEFAULT/image_service': value => $image_service;
'DEFAULT/host': value => $host;
}
# we keep "nova.openstack.common.rpc.impl_kombu" for backward compatibility

View File

@ -0,0 +1,23 @@
---
upgrade:
- |
API configuration options have been moved to the 'api' group. They
should no longer be included in the 'DEFAULT' group. Options affected by
this change:
* ``auth_strategy``
* ``use_forwarded_for``
* ``vendordata_providers``
* ``vendordata_dynamic_targets``
* ``vendordata_dynamic_ssl_certfile``
* ``vendordata_dynamic_connect_timeout``
* ``vendordata_dynamic_read_timeout``
* ``metadata_cache_expiration``
* ``vendordata_jsonfile_path``
* ``max_limit`` (was ``osapi_max_limit``)
* ``compute_link_prefix`` (was ``osapi_compute_link_prefix``)
* ``glance_link_prefix`` (was ``osapi_glance_link_prefix``)
* ``allow_instance_snapshots``
* ``hide_server_address_states`` (was ``osapi_hide_server_address_states``)
* ``fping_path``
* ``enable_instance_password``

View File

@ -54,21 +54,21 @@ describe 'nova::api' do
is_expected.to contain_nova_config('DEFAULT/osapi_compute_workers').with('value' => '5')
is_expected.to contain_nova_config('DEFAULT/metadata_workers').with('value' => '5')
is_expected.to contain_nova_config('DEFAULT/default_floating_pool').with('value' => 'nova')
is_expected.to contain_nova_config('DEFAULT/fping_path').with('value' => '/usr/sbin/fping')
is_expected.to contain_nova_config('api/fping_path').with('value' => '/usr/sbin/fping')
is_expected.to contain_nova_config('oslo_middleware/enable_proxy_headers_parsing').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/metadata_cache_expiration').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/vendordata_jsonfile_path').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/vendordata_providers').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/vendordata_dynamic_targets').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/vendordata_dynamic_connect_timeout').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/vendordata_dynamic_read_timeout').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/osapi_max_limit').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/osapi_compute_link_prefix').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/osapi_glance_link_prefix').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/osapi_hide_server_address_states').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/allow_instance_snapshots').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/metadata_cache_expiration').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/vendordata_jsonfile_path').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/vendordata_providers').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/vendordata_dynamic_targets').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/vendordata_dynamic_connect_timeout').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/vendordata_dynamic_read_timeout').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/max_limit').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/compute_link_prefix').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/glance_link_prefix').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/hide_server_address_states').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/allow_instance_snapshots').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/enable_network_quota').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/enable_instance_password').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('api/enable_instance_password').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/password_length').with('value' => '<SERVICE DEFAULT>')
is_expected.to contain_nova_config('DEFAULT/allow_resize_to_same_host').with('value' => false)
end
@ -135,26 +135,26 @@ describe 'nova::api' do
is_expected.to contain_nova_config('DEFAULT/metadata_listen').with('value' => '127.0.0.1')
is_expected.to contain_nova_config('DEFAULT/metadata_listen_port').with('value' => '8875')
is_expected.to contain_nova_config('DEFAULT/osapi_volume_listen').with('value' => '192.168.56.210')
is_expected.to contain_nova_config('DEFAULT/use_forwarded_for').with('value' => false)
is_expected.to contain_nova_config('api/use_forwarded_for').with('value' => false)
is_expected.to contain_nova_config('DEFAULT/osapi_compute_workers').with('value' => '1')
is_expected.to contain_nova_config('DEFAULT/metadata_workers').with('value' => '2')
is_expected.to contain_nova_config('DEFAULT/default_floating_pool').with('value' => 'public')
is_expected.to contain_nova_config('DEFAULT/metadata_cache_expiration').with('value' => '15')
is_expected.to contain_nova_config('DEFAULT/vendordata_jsonfile_path').with('value' => '/tmp')
is_expected.to contain_nova_config('DEFAULT/vendordata_providers').with('value' => 'StaticJSON,DynamicJSON')
is_expected.to contain_nova_config('DEFAULT/vendordata_dynamic_targets').with('value' => 'join@http://127.0.0.1:9999/v1/')
is_expected.to contain_nova_config('DEFAULT/vendordata_dynamic_connect_timeout').with('value' => '30')
is_expected.to contain_nova_config('DEFAULT/vendordata_dynamic_read_timeout').with('value' => '30')
is_expected.to contain_nova_config('DEFAULT/osapi_max_limit').with('value' => '1000')
is_expected.to contain_nova_config('DEFAULT/osapi_compute_link_prefix').with('value' => 'https://10.0.0.1:7777/')
is_expected.to contain_nova_config('DEFAULT/osapi_glance_link_prefix').with('value' => 'https://10.0.0.1:6666/')
is_expected.to contain_nova_config('api/metadata_cache_expiration').with('value' => '15')
is_expected.to contain_nova_config('api/vendordata_jsonfile_path').with('value' => '/tmp')
is_expected.to contain_nova_config('api/vendordata_providers').with('value' => 'StaticJSON,DynamicJSON')
is_expected.to contain_nova_config('api/vendordata_dynamic_targets').with('value' => 'join@http://127.0.0.1:9999/v1/')
is_expected.to contain_nova_config('api/vendordata_dynamic_connect_timeout').with('value' => '30')
is_expected.to contain_nova_config('api/vendordata_dynamic_read_timeout').with('value' => '30')
is_expected.to contain_nova_config('api/max_limit').with('value' => '1000')
is_expected.to contain_nova_config('api/compute_link_prefix').with('value' => 'https://10.0.0.1:7777/')
is_expected.to contain_nova_config('api/glance_link_prefix').with('value' => 'https://10.0.0.1:6666/')
is_expected.to contain_nova_config('neutron/service_metadata_proxy').with('value' => true)
is_expected.to contain_nova_config('neutron/metadata_proxy_shared_secret').with('value' => 'secrete')
is_expected.to contain_nova_config('oslo_middleware/enable_proxy_headers_parsing').with('value' => true)
is_expected.to contain_nova_config('DEFAULT/osapi_hide_server_address_states').with('value' => 'building')
is_expected.to contain_nova_config('DEFAULT/allow_instance_snapshots').with('value' => true)
is_expected.to contain_nova_config('api/hide_server_address_states').with('value' => 'building')
is_expected.to contain_nova_config('api/allow_instance_snapshots').with('value' => true)
is_expected.to contain_nova_config('DEFAULT/enable_network_quota').with('value' => false)
is_expected.to contain_nova_config('DEFAULT/enable_instance_password').with('value' => true)
is_expected.to contain_nova_config('api/enable_instance_password').with('value' => true)
is_expected.to contain_nova_config('DEFAULT/password_length').with('value' => '12')
is_expected.to contain_nova_config('DEFAULT/allow_resize_to_same_host').with('value' => true)
end

View File

@ -37,7 +37,7 @@ describe 'nova' do
end
it 'configures auth_strategy' do
is_expected.to contain_nova_config('DEFAULT/auth_strategy').with_value('keystone')
is_expected.to contain_nova_config('api/auth_strategy').with_value('keystone')
is_expected.to_not contain_nova_config('DEFAULT/use_deprecated_auth').with_value(false)
end
@ -134,7 +134,7 @@ describe 'nova' do
end
it 'configures auth_strategy' do
is_expected.to contain_nova_config('DEFAULT/auth_strategy').with_value('foo')
is_expected.to contain_nova_config('api/auth_strategy').with_value('foo')
is_expected.to_not contain_nova_config('DEFAULT/use_deprecated_auth').with_value(true)
end