Merge "Remove deprecated DEFAULT options"

This commit is contained in:
Zuul 2018-05-02 12:49:32 +00:00 committed by Gerrit Code Review
commit 77fdd65bad
8 changed files with 9 additions and 177 deletions

View File

@ -18,18 +18,6 @@
- Description
* - **[DEFAULT]**
-
* - ``cinder_admin_auth_url`` = ``http://localhost:5000/v2.0``
- (String) DEPRECATED: Identity service URL. This option isn't used any longer. Please use [cinder] auth_url instead.
* - ``cinder_admin_password`` = ``None``
- (String) DEPRECATED: Cinder admin password. This option isn't used any longer. Please use [cinder] password instead.
* - ``cinder_admin_tenant_name`` = ``service``
- (String) DEPRECATED: Cinder admin tenant name. This option isn't used any longer. Please use [cinder] tenant_name instead.
* - ``cinder_admin_username`` = ``cinder``
- (String) DEPRECATED: Cinder admin username. This option isn't used any longer. Please use [cinder] username instead.
* - ``cinder_catalog_info`` = ``volume:cinder:publicURL``
- (String) DEPRECATED: Info to match when looking for cinder in the service catalog. Format is separated values of the form: <service_type>:<service_name>:<endpoint_type> This option isn't used any longer.
* - ``cinder_volume_type`` = ``None``
- (String) Name or id of cinder volume type which will be used for all volumes created by driver.
* - ``connect_share_server_to_tenant_network`` = ``False``
- (Boolean) Attach share server directly to share network. Used only with Neutron and if driver_handles_share_servers=True.
* - ``container_volume_group`` = ``manila_docker_volumes``

View File

@ -16,15 +16,12 @@
import copy
from keystoneauth1 import loading as ks_loading
from keystoneauth1.loading._plugins.identity import v2
from oslo_config import cfg
from oslo_log import log
from manila import exception
from manila.i18n import _
CONF = cfg.CONF
LOG = log.getLogger(__name__)
"""Helper class to support keystone v2 and v3 for clients
@ -37,8 +34,7 @@ needed to load all needed parameters dynamically.
class AuthClientLoader(object):
def __init__(self, client_class, exception_module, cfg_group,
deprecated_opts_for_v2=None):
def __init__(self, client_class, exception_module, cfg_group):
self.client_class = client_class
self.exception_module = exception_module
self.group = cfg_group
@ -46,7 +42,6 @@ class AuthClientLoader(object):
self.conf = CONF
self.session = None
self.auth_plugin = None
self.deprecated_opts_for_v2 = deprecated_opts_for_v2
@staticmethod
def list_opts(group):
@ -77,11 +72,6 @@ class AuthClientLoader(object):
self.auth_plugin = ks_loading.load_auth_from_conf_options(
CONF, self.group)
if self.deprecated_opts_for_v2 and not self.auth_plugin:
LOG.warning("Not specifying auth options is deprecated")
self.auth_plugin = v2.Password().load_from_options(
**self.deprecated_opts_for_v2)
if self.auth_plugin:
return self.auth_plugin

View File

@ -32,49 +32,6 @@ from manila.i18n import _
NOVA_GROUP = 'nova'
AUTH_OBJ = None
nova_deprecated_opts = [
cfg.StrOpt('nova_admin_username',
default='nova',
help='Nova admin username.',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please "
"use [nova] username instead."),
cfg.StrOpt('nova_admin_password',
help='Nova admin password.',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please "
"use [nova] password instead."),
cfg.StrOpt('nova_admin_tenant_name',
default='service',
help='Nova admin tenant name.',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please "
"use [nova] tenant instead."),
cfg.StrOpt('nova_admin_auth_url',
default='http://localhost:5000/v2.0',
help='Identity service URL.',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please "
"use [nova] url instead."),
cfg.StrOpt('nova_catalog_info',
default='compute:nova:publicURL',
help='Info to match when looking for nova in the service '
'catalog. Format is separated values of the form: '
'<service_type>:<service_name>:<endpoint_type>',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer."),
cfg.StrOpt('nova_catalog_admin_info',
default='compute:nova:adminURL',
help='Same as nova_catalog_info, but for admin endpoint.',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer."),
]
nova_opts = [
cfg.StrOpt('api_microversion',
@ -100,7 +57,6 @@ nova_opts = [
]
CONF = cfg.CONF
CONF.register_opts(nova_deprecated_opts)
CONF.register_opts(core_opts)
CONF.register_opts(nova_opts, NOVA_GROUP)
ks_loading.register_session_conf_options(CONF, NOVA_GROUP)
@ -114,17 +70,10 @@ def list_opts():
def novaclient(context):
global AUTH_OBJ
if not AUTH_OBJ:
deprecated_opts_for_v2 = {
'username': CONF.nova_admin_username,
'password': CONF.nova_admin_password,
'tenant_name': CONF.nova_admin_tenant_name,
'auth_url': CONF.nova_admin_auth_url,
}
AUTH_OBJ = client_auth.AuthClientLoader(
client_class=nova_client.Client,
exception_module=nova_exception,
cfg_group=NOVA_GROUP,
deprecated_opts_for_v2=deprecated_opts_for_v2)
cfg_group=NOVA_GROUP)
return AUTH_OBJ.get_client(context,
version=CONF[NOVA_GROUP].api_microversion,
insecure=CONF[NOVA_GROUP].api_insecure,

View File

@ -27,41 +27,6 @@ from manila.network.neutron import constants as neutron_constants
NEUTRON_GROUP = 'neutron'
neutron_deprecated_opts = [
cfg.StrOpt(
'neutron_admin_username',
default='neutron',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please use "
"[neutron] username instead.",
help='Username for connecting to neutron in admin context.'),
cfg.StrOpt(
'neutron_admin_password',
help='Password for connecting to neutron in admin context.',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please use "
"[neutron] password instead.",
secret=True),
cfg.StrOpt(
'neutron_admin_project_name',
default='service',
deprecated_group='DEFAULT',
deprecated_name='neutron_admin_tenant_name',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please use "
"[neutron] project instead.",
help='Project name for connecting to Neutron in admin context.'),
cfg.StrOpt(
'neutron_admin_auth_url',
default='http://localhost:5000/v2.0',
deprecated_group='DEFAULT',
deprecated_for_removal=True,
deprecated_reason="This option isn't used any longer. Please use "
"[neutron] auth_url instead.",
help='Auth URL for connecting to neutron in admin context.'),
]
neutron_opts = [
cfg.StrOpt(
@ -121,8 +86,6 @@ class API(object):
ks_loading.register_session_conf_options(CONF, NEUTRON_GROUP)
ks_loading.register_auth_conf_options(CONF, NEUTRON_GROUP)
CONF.register_opts(neutron_opts, NEUTRON_GROUP)
CONF.register_opts(neutron_deprecated_opts,
group=self.config_group_name)
self.configuration = getattr(CONF, self.config_group_name, CONF)
self.last_neutron_extension_sync = None
@ -135,18 +98,10 @@ class API(object):
def get_client(self, context):
if not self.auth_obj:
config = CONF[self.config_group_name]
v2_deprecated_opts = {
'username': config.neutron_admin_username,
'password': config.neutron_admin_password,
'tenant_name': config.neutron_admin_project_name,
'auth_url': config.neutron_admin_auth_url,
}
self.auth_obj = client_auth.AuthClientLoader(
client_class=clientv20.Client,
exception_module=neutron_client_exc,
cfg_group=NEUTRON_GROUP,
deprecated_opts_for_v2=v2_deprecated_opts)
cfg_group=NEUTRON_GROUP)
return self.auth_obj.get_client(
self,

View File

@ -14,7 +14,6 @@
# under the License.
from keystoneauth1 import loading as auth
from keystoneauth1.loading._plugins.identity import v2
from oslo_config import cfg
import mock
@ -64,20 +63,6 @@ class ClientAuthTestCase(test.TestCase):
self.assertRaises(fake_client_exception_class.Unauthorized,
self.auth._load_auth_plugin)
def test_load_auth_plugin_no_auth_deprecated_opts(self):
auth.load_auth_from_conf_options.return_value = None
self.auth.deprecated_opts_for_v2 = {"username": "foo"}
pwd_mock = self.mock_object(v2, 'Password')
auth_result = mock.Mock()
auth_result.load_from_options = mock.Mock(return_value='foo_auth')
pwd_mock.return_value = auth_result
result = self.auth._load_auth_plugin()
pwd_mock.assert_called_once_with()
auth_result.load_from_options.assert_called_once_with(username='foo')
self.assertEqual(result, 'foo_auth')
@mock.patch.object(auth, 'register_session_conf_options')
@mock.patch.object(auth, 'get_auth_common_conf_options')
@mock.patch.object(auth, 'get_auth_plugin_conf_options')

View File

@ -133,12 +133,6 @@ class NovaclientTestCase(test.TestCase):
nova.client_auth, 'AuthClientLoader')
fake_context = 'fake_context'
data = {
'DEFAULT': {
'nova_admin_username': 'foo_username',
'nova_admin_password': 'foo_password',
'nova_admin_tenant_name': 'foo_tenant_name',
'nova_admin_auth_url': 'foo_auth_url',
},
'nova': {
'api_microversion': 'foo_api_microversion',
'api_insecure': True,
@ -154,13 +148,7 @@ class NovaclientTestCase(test.TestCase):
mock_client_loader.assert_called_once_with(
client_class=nova.nova_client.Client,
exception_module=nova.nova_exception,
cfg_group=nova.NOVA_GROUP,
deprecated_opts_for_v2={
'username': data['DEFAULT']['nova_admin_username'],
'password': data['DEFAULT']['nova_admin_password'],
'tenant_name': data['DEFAULT']['nova_admin_tenant_name'],
'auth_url': data['DEFAULT']['nova_admin_auth_url'],
},
cfg_group=nova.NOVA_GROUP
)
mock_client_loader.return_value.get_client.assert_called_once_with(
fake_context,

View File

@ -88,12 +88,6 @@ class NeutronclientTestCase(test.TestCase):
neutron_api.client_auth, 'AuthClientLoader')
fake_context = 'fake_context'
data = {
'DEFAULT': {
'neutron_admin_username': 'foo_username',
'neutron_admin_password': 'foo_password',
'neutron_admin_tenant_name': 'foo_tenant_name',
'neutron_admin_auth_url': 'foo_auth_url',
},
'neutron': {
'endpoint_type': 'foo_endpoint_type',
'region_name': 'foo_region_name',
@ -108,13 +102,7 @@ class NeutronclientTestCase(test.TestCase):
mock_client_loader.assert_called_once_with(
client_class=neutron_api.clientv20.Client,
exception_module=neutron_api.neutron_client_exc,
cfg_group=neutron_api.NEUTRON_GROUP,
deprecated_opts_for_v2={
'username': data['DEFAULT']['neutron_admin_username'],
'password': data['DEFAULT']['neutron_admin_password'],
'tenant_name': data['DEFAULT']['neutron_admin_tenant_name'],
'auth_url': data['DEFAULT']['neutron_admin_auth_url'],
},
cfg_group=neutron_api.NEUTRON_GROUP
)
mock_client_loader.return_value.get_client.assert_called_once_with(
self.client,
@ -165,21 +153,6 @@ class NeutronApiTest(test.TestCase):
self.assertTrue(hasattr(neutron_api_instance, 'configuration'))
self.assertEqual('DEFAULT', neutron_api_instance.config_group_name)
def test_create_api_object_custom_config_group(self):
# Set up test data
fake_config_group_name = 'fake_config_group_name'
# instantiate Neutron API object
obj = neutron_api.API(fake_config_group_name)
obj.get_client(mock.Mock())
# Verify results
self.assertTrue(clientv20.Client.called)
self.assertTrue(hasattr(obj, 'client'))
self.assertTrue(hasattr(obj, 'configuration'))
self.assertEqual(
fake_config_group_name, obj.configuration._group.name)
def test_create_port_with_all_args(self):
# Set up test data
self.mock_object(self.neutron_api, '_has_port_binding_extension',

View File

@ -0,0 +1,4 @@
---
deprecations:
- |
Remove deprecated cinder, neutron, nova options in DEFAULT group.