Remove deprecated methods from assignment.Manager
assignment.Manager provided several methods that forwarded calls to the role and resource managers. These are removed. assignment.Manager's interface isn't stable anyways so there was no need to mark these as deprecated. DocImpact ReleaseNoteImpact Closes-Bug: 1482662 Change-Id: Ie2340a2fd0e7acef4e285db23a575ee5824513b9
This commit is contained in:
parent
d728bf7ebc
commit
c7f2ec44b9
|
@ -19,7 +19,6 @@ import copy
|
|||
|
||||
from oslo_config import cfg
|
||||
from oslo_log import log
|
||||
from oslo_log import versionutils
|
||||
import six
|
||||
|
||||
from keystone.common import cache
|
||||
|
@ -37,40 +36,6 @@ LOG = log.getLogger(__name__)
|
|||
MEMOIZE = cache.get_memoization_decorator(section='role')
|
||||
|
||||
|
||||
def deprecated_to_role_api(f):
|
||||
"""Specialized deprecation wrapper for assignment to role api.
|
||||
|
||||
This wraps the standard deprecation wrapper and fills in the method
|
||||
names automatically.
|
||||
|
||||
"""
|
||||
@six.wraps(f)
|
||||
def wrapper(*args, **kwargs):
|
||||
x = versionutils.deprecated(
|
||||
what='assignment.' + f.__name__ + '()',
|
||||
as_of=versionutils.deprecated.KILO,
|
||||
in_favor_of='role.' + f.__name__ + '()')
|
||||
return x(f)
|
||||
return wrapper()
|
||||
|
||||
|
||||
def deprecated_to_resource_api(f):
|
||||
"""Specialized deprecation wrapper for assignment to resource api.
|
||||
|
||||
This wraps the standard deprecation wrapper and fills in the method
|
||||
names automatically.
|
||||
|
||||
"""
|
||||
@six.wraps(f)
|
||||
def wrapper(*args, **kwargs):
|
||||
x = versionutils.deprecated(
|
||||
what='assignment.' + f.__name__ + '()',
|
||||
as_of=versionutils.deprecated.KILO,
|
||||
in_favor_of='resource.' + f.__name__ + '()')
|
||||
return x(f)
|
||||
return wrapper()
|
||||
|
||||
|
||||
@dependency.provider('assignment_api')
|
||||
@dependency.requires('credential_api', 'identity_api', 'resource_api',
|
||||
'revoke_api', 'role_api')
|
||||
|
@ -944,98 +909,6 @@ class Manager(manager.Manager):
|
|||
# from persistence if persistence is enabled.
|
||||
pass
|
||||
|
||||
@deprecated_to_role_api
|
||||
def create_role(self, role_id, role):
|
||||
return self.role_api.create_role(role_id, role)
|
||||
|
||||
@deprecated_to_role_api
|
||||
def get_role(self, role_id):
|
||||
return self.role_api.get_role(role_id)
|
||||
|
||||
@deprecated_to_role_api
|
||||
def update_role(self, role_id, role):
|
||||
return self.role_api.update_role(role_id, role)
|
||||
|
||||
@deprecated_to_role_api
|
||||
def delete_role(self, role_id):
|
||||
return self.role_api.delete_role(role_id)
|
||||
|
||||
@deprecated_to_role_api
|
||||
def list_roles(self, hints=None):
|
||||
return self.role_api.list_roles(hints=hints)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def create_project(self, project_id, project):
|
||||
return self.resource_api.create_project(project_id, project)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def get_project_by_name(self, tenant_name, domain_id):
|
||||
return self.resource_api.get_project_by_name(tenant_name, domain_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def get_project(self, project_id):
|
||||
return self.resource_api.get_project(project_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def update_project(self, project_id, project):
|
||||
return self.resource_api.update_project(project_id, project)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def delete_project(self, project_id):
|
||||
return self.resource_api.delete_project(project_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def list_projects(self, hints=None):
|
||||
return self.resource_api.list_projects(hints=hints)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def list_projects_in_domain(self, domain_id):
|
||||
return self.resource_api.list_projects_in_domain(domain_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def create_domain(self, domain_id, domain):
|
||||
return self.resource_api.create_domain(domain_id, domain)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def get_domain_by_name(self, domain_name):
|
||||
return self.resource_api.get_domain_by_name(domain_name)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def get_domain(self, domain_id):
|
||||
return self.resource_api.get_domain(domain_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def update_domain(self, domain_id, domain):
|
||||
return self.resource_api.update_domain(domain_id, domain)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def delete_domain(self, domain_id):
|
||||
return self.resource_api.delete_domain(domain_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def list_domains(self, hints=None):
|
||||
return self.resource_api.list_domains(hints=hints)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def assert_domain_enabled(self, domain_id, domain=None):
|
||||
return self.resource_api.assert_domain_enabled(domain_id, domain)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def assert_project_enabled(self, project_id, project=None):
|
||||
return self.resource_api.assert_project_enabled(project_id, project)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def is_leaf_project(self, project_id):
|
||||
return self.resource_api.is_leaf_project(project_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def list_project_parents(self, project_id, user_id=None):
|
||||
return self.resource_api.list_project_parents(project_id, user_id)
|
||||
|
||||
@deprecated_to_resource_api
|
||||
def list_projects_in_subtree(self, project_id, user_id=None):
|
||||
return self.resource_api.list_projects_in_subtree(project_id, user_id)
|
||||
|
||||
|
||||
@six.add_metaclass(abc.ABCMeta)
|
||||
class Driver(object):
|
||||
|
|
|
@ -20,8 +20,6 @@ import mock
|
|||
from oslo_config import cfg
|
||||
from oslo_db import exception as db_exception
|
||||
from oslo_db import options
|
||||
from oslo_log import log
|
||||
from oslo_log import versionutils
|
||||
from six.moves import range
|
||||
import sqlalchemy
|
||||
from sqlalchemy import exc
|
||||
|
@ -921,76 +919,3 @@ class SqlCredential(SqlTests):
|
|||
credentials = self.credential_api.list_credentials_for_user(
|
||||
self.user_foo['id'])
|
||||
self._validateCredentialList(credentials, self.user_credentials)
|
||||
|
||||
|
||||
class DeprecatedDecorators(SqlTests):
|
||||
|
||||
def setUp(self):
|
||||
super(DeprecatedDecorators, self).setUp()
|
||||
|
||||
# The only reason this is here is because report_deprecated_feature()
|
||||
# registers the fatal_deprecations option which these tests use.
|
||||
versionutils.report_deprecated_feature(
|
||||
log.getLogger(__name__), 'ignore this message')
|
||||
|
||||
def test_assignment_to_role_api(self):
|
||||
"""Test that calling one of the methods does call LOG.deprecated.
|
||||
|
||||
This method is really generic to the type of backend, but we need
|
||||
one to execute the test, so the SQL backend is as good as any.
|
||||
|
||||
"""
|
||||
|
||||
# Rather than try and check that a log message is issued, we
|
||||
# enable fatal_deprecations so that we can check for the
|
||||
# raising of the exception.
|
||||
|
||||
# First try to create a role without enabling fatal deprecations,
|
||||
# which should work due to the cross manager deprecated calls.
|
||||
role_ref = {
|
||||
'id': uuid.uuid4().hex,
|
||||
'name': uuid.uuid4().hex}
|
||||
self.assignment_api.create_role(role_ref['id'], role_ref)
|
||||
self.role_api.get_role(role_ref['id'])
|
||||
|
||||
# Now enable fatal exceptions - creating a role by calling the
|
||||
# old manager should now fail.
|
||||
self.config_fixture.config(fatal_deprecations=True)
|
||||
role_ref = {
|
||||
'id': uuid.uuid4().hex,
|
||||
'name': uuid.uuid4().hex}
|
||||
self.assertRaises(versionutils.DeprecatedConfig,
|
||||
self.assignment_api.create_role,
|
||||
role_ref['id'], role_ref)
|
||||
|
||||
def test_assignment_to_resource_api(self):
|
||||
"""Test that calling one of the methods does call LOG.deprecated.
|
||||
|
||||
This method is really generic to the type of backend, but we need
|
||||
one to execute the test, so the SQL backend is as good as any.
|
||||
|
||||
"""
|
||||
|
||||
# Rather than try and check that a log message is issued, we
|
||||
# enable fatal_deprecations so that we can check for the
|
||||
# raising of the exception.
|
||||
|
||||
# First try to create a project without enabling fatal deprecations,
|
||||
# which should work due to the cross manager deprecated calls.
|
||||
project_ref = {
|
||||
'id': uuid.uuid4().hex,
|
||||
'name': uuid.uuid4().hex,
|
||||
'domain_id': DEFAULT_DOMAIN_ID}
|
||||
self.resource_api.create_project(project_ref['id'], project_ref)
|
||||
self.resource_api.get_project(project_ref['id'])
|
||||
|
||||
# Now enable fatal exceptions - creating a project by calling the
|
||||
# old manager should now fail.
|
||||
self.config_fixture.config(fatal_deprecations=True)
|
||||
project_ref = {
|
||||
'id': uuid.uuid4().hex,
|
||||
'name': uuid.uuid4().hex,
|
||||
'domain_id': DEFAULT_DOMAIN_ID}
|
||||
self.assertRaises(versionutils.DeprecatedConfig,
|
||||
self.assignment_api.create_project,
|
||||
project_ref['id'], project_ref)
|
||||
|
|
Loading…
Reference in New Issue