Divide vmware_nsx/nsxlib/ into mh and v3 subdirectories
This patch adds a new subdirectory "mh" under vmware_nsx/nsxlib/ and moves all current vmware_nsx/nsxlib/*.py to "mh". This will make vmware_nsx/nsxlib/ consisted of only mh and v3 subdirectories. This is part of new vmware_nsx directory structure proposed in https://goo.gl/GdWXyH. Change-Id: I31e4558b648c9982208739b19623002e1fa181ff
This commit is contained in:
parent
4bf8308494
commit
4965074703
@ -22,7 +22,7 @@ from oslo_config import cfg
|
||||
from neutron.common import config
|
||||
from vmware_nsx.common import config as nsx_config # noqa
|
||||
from vmware_nsx.common import nsx_utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
|
||||
config.setup_logging()
|
||||
|
||||
|
@ -27,10 +27,10 @@ from vmware_nsx.common import utils as vmw_utils
|
||||
from vmware_nsx.db import db as nsx_db
|
||||
from vmware_nsx.db import networkgw_db
|
||||
from vmware_nsx import nsx_cluster
|
||||
from vmware_nsx.nsxlib import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib import router as routerlib
|
||||
from vmware_nsx.nsxlib import secgroup as secgrouplib
|
||||
from vmware_nsx.nsxlib import switch as switchlib
|
||||
from vmware_nsx.nsxlib.mh import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib.mh import router as routerlib
|
||||
from vmware_nsx.nsxlib.mh import secgroup as secgrouplib
|
||||
from vmware_nsx.nsxlib.mh import switch as switchlib
|
||||
|
||||
LOG = log.getLogger(__name__)
|
||||
|
||||
|
@ -33,9 +33,9 @@ from neutron.i18n import _LE, _LI, _LW
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import nsx_utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import router as routerlib
|
||||
from vmware_nsx.nsxlib import switch as switchlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import router as routerlib
|
||||
from vmware_nsx.nsxlib.mh import switch as switchlib
|
||||
|
||||
# Maximum page size for a single request
|
||||
# NOTE(salv-orlando): This might become a version-dependent map should the
|
||||
|
@ -27,8 +27,8 @@ from vmware_nsx.common import exceptions as p_exc
|
||||
from vmware_nsx.common import nsx_utils
|
||||
from vmware_nsx.db import lsn_db
|
||||
from vmware_nsx.dhcp_meta import constants as const
|
||||
from vmware_nsx.nsxlib import lsn as lsn_api
|
||||
from vmware_nsx.nsxlib import switch as switch_api
|
||||
from vmware_nsx.nsxlib.mh import lsn as lsn_api
|
||||
from vmware_nsx.nsxlib.mh import switch as switch_api
|
||||
|
||||
LOG = logging.getLogger(__name__)
|
||||
|
||||
|
@ -28,7 +28,7 @@ from neutron.extensions import external_net
|
||||
from neutron.i18n import _LE, _LI
|
||||
from vmware_nsx.common import exceptions as p_exc
|
||||
from vmware_nsx.dhcp_meta import constants as d_const
|
||||
from vmware_nsx.nsxlib import lsn as lsn_api
|
||||
from vmware_nsx.nsxlib.mh import lsn as lsn_api
|
||||
|
||||
LOG = logging.getLogger(__name__)
|
||||
|
||||
|
@ -1,148 +0,0 @@
|
||||
# Copyright 2014 VMware, Inc.
|
||||
# All Rights Reserved
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from neutron.common import exceptions as exception
|
||||
from neutron import version
|
||||
from oslo_log import log
|
||||
from oslo_serialization import jsonutils
|
||||
import six
|
||||
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
|
||||
HTTP_GET = "GET"
|
||||
HTTP_POST = "POST"
|
||||
HTTP_DELETE = "DELETE"
|
||||
HTTP_PUT = "PUT"
|
||||
# Prefix to be used for all NSX API calls
|
||||
URI_PREFIX = "/ws.v1"
|
||||
NEUTRON_VERSION = version.version_info.release_string()
|
||||
|
||||
LOG = log.getLogger(__name__)
|
||||
|
||||
|
||||
def _build_uri_path(resource,
|
||||
resource_id=None,
|
||||
parent_resource_id=None,
|
||||
fields=None,
|
||||
relations=None,
|
||||
filters=None,
|
||||
types=None,
|
||||
is_attachment=False,
|
||||
extra_action=None):
|
||||
resources = resource.split('/')
|
||||
res_path = resources[0]
|
||||
if resource_id:
|
||||
res_path += "/%s" % resource_id
|
||||
if len(resources) > 1:
|
||||
# There is also a parent resource to account for in the uri
|
||||
res_path = "%s/%s/%s" % (resources[1],
|
||||
parent_resource_id,
|
||||
res_path)
|
||||
if is_attachment:
|
||||
res_path = "%s/attachment" % res_path
|
||||
elif extra_action:
|
||||
res_path = "%s/%s" % (res_path, extra_action)
|
||||
params = []
|
||||
params.append(fields and "fields=%s" % fields)
|
||||
params.append(relations and "relations=%s" % relations)
|
||||
params.append(types and "types=%s" % types)
|
||||
if filters:
|
||||
sorted_filters = [
|
||||
'%s=%s' % (k, filters[k]) for k in sorted(filters.keys())
|
||||
]
|
||||
params.extend(sorted_filters)
|
||||
uri_path = "%s/%s" % (URI_PREFIX, res_path)
|
||||
non_empty_params = [x for x in params if x is not None]
|
||||
if non_empty_params:
|
||||
query_string = '&'.join(non_empty_params)
|
||||
if query_string:
|
||||
uri_path += "?%s" % query_string
|
||||
return uri_path
|
||||
|
||||
|
||||
def format_exception(etype, e, exception_locals):
|
||||
"""Consistent formatting for exceptions.
|
||||
|
||||
:param etype: a string describing the exception type.
|
||||
:param e: the exception.
|
||||
:param execption_locals: calling context local variable dict.
|
||||
:returns: a formatted string.
|
||||
"""
|
||||
msg = [_("Error. %(type)s exception: %(exc)s.") %
|
||||
{'type': etype, 'exc': e}]
|
||||
l = dict((k, v) for k, v in six.iteritems(exception_locals)
|
||||
if k != 'request')
|
||||
msg.append(_("locals=[%s]") % str(l))
|
||||
return ' '.join(msg)
|
||||
|
||||
|
||||
def do_request(*args, **kwargs):
|
||||
"""Issue a request to the cluster specified in kwargs.
|
||||
|
||||
:param args: a list of positional arguments.
|
||||
:param kwargs: a list of keyworkds arguments.
|
||||
:returns: the result of the operation loaded into a python
|
||||
object or None.
|
||||
"""
|
||||
cluster = kwargs["cluster"]
|
||||
try:
|
||||
res = cluster.api_client.request(*args)
|
||||
if res:
|
||||
return jsonutils.loads(res)
|
||||
except api_exc.ResourceNotFound:
|
||||
raise exception.NotFound()
|
||||
except api_exc.ReadOnlyMode:
|
||||
raise nsx_exc.MaintenanceInProgress()
|
||||
|
||||
|
||||
def get_single_query_page(path, cluster, page_cursor=None,
|
||||
page_length=1000, neutron_only=True):
|
||||
params = []
|
||||
if page_cursor:
|
||||
params.append("_page_cursor=%s" % page_cursor)
|
||||
params.append("_page_length=%s" % page_length)
|
||||
# NOTE(salv-orlando): On the NSX backend the 'Quantum' tag is still
|
||||
# used for marking Neutron entities in order to preserve compatibility
|
||||
if neutron_only:
|
||||
params.append("tag_scope=quantum")
|
||||
query_params = "&".join(params)
|
||||
path = "%s%s%s" % (path, "&" if (path.find("?") != -1) else "?",
|
||||
query_params)
|
||||
body = do_request(HTTP_GET, path, cluster=cluster)
|
||||
# Result_count won't be returned if _page_cursor is supplied
|
||||
return body['results'], body.get('page_cursor'), body.get('result_count')
|
||||
|
||||
|
||||
def get_all_query_pages(path, cluster):
|
||||
need_more_results = True
|
||||
result_list = []
|
||||
page_cursor = None
|
||||
while need_more_results:
|
||||
results, page_cursor = get_single_query_page(
|
||||
path, cluster, page_cursor)[:2]
|
||||
if not page_cursor:
|
||||
need_more_results = False
|
||||
result_list.extend(results)
|
||||
return result_list
|
||||
|
||||
|
||||
def mk_body(**kwargs):
|
||||
"""Convenience function creates and dumps dictionary to string.
|
||||
|
||||
:param kwargs: the key/value pirs to be dumped into a json string.
|
||||
:returns: a json string.
|
||||
"""
|
||||
return jsonutils.dumps(kwargs, ensure_ascii=False)
|
148
vmware_nsx/nsxlib/mh/__init__.py
Normal file
148
vmware_nsx/nsxlib/mh/__init__.py
Normal file
@ -0,0 +1,148 @@
|
||||
# Copyright 2014 VMware, Inc.
|
||||
# All Rights Reserved
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
from neutron.common import exceptions as exception
|
||||
from neutron import version
|
||||
from oslo_log import log
|
||||
from oslo_serialization import jsonutils
|
||||
import six
|
||||
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
|
||||
HTTP_GET = "GET"
|
||||
HTTP_POST = "POST"
|
||||
HTTP_DELETE = "DELETE"
|
||||
HTTP_PUT = "PUT"
|
||||
# Prefix to be used for all NSX API calls
|
||||
URI_PREFIX = "/ws.v1"
|
||||
NEUTRON_VERSION = version.version_info.release_string()
|
||||
|
||||
LOG = log.getLogger(__name__)
|
||||
|
||||
|
||||
def _build_uri_path(resource,
|
||||
resource_id=None,
|
||||
parent_resource_id=None,
|
||||
fields=None,
|
||||
relations=None,
|
||||
filters=None,
|
||||
types=None,
|
||||
is_attachment=False,
|
||||
extra_action=None):
|
||||
resources = resource.split('/')
|
||||
res_path = resources[0]
|
||||
if resource_id:
|
||||
res_path += "/%s" % resource_id
|
||||
if len(resources) > 1:
|
||||
# There is also a parent resource to account for in the uri
|
||||
res_path = "%s/%s/%s" % (resources[1],
|
||||
parent_resource_id,
|
||||
res_path)
|
||||
if is_attachment:
|
||||
res_path = "%s/attachment" % res_path
|
||||
elif extra_action:
|
||||
res_path = "%s/%s" % (res_path, extra_action)
|
||||
params = []
|
||||
params.append(fields and "fields=%s" % fields)
|
||||
params.append(relations and "relations=%s" % relations)
|
||||
params.append(types and "types=%s" % types)
|
||||
if filters:
|
||||
sorted_filters = [
|
||||
'%s=%s' % (k, filters[k]) for k in sorted(filters.keys())
|
||||
]
|
||||
params.extend(sorted_filters)
|
||||
uri_path = "%s/%s" % (URI_PREFIX, res_path)
|
||||
non_empty_params = [x for x in params if x is not None]
|
||||
if non_empty_params:
|
||||
query_string = '&'.join(non_empty_params)
|
||||
if query_string:
|
||||
uri_path += "?%s" % query_string
|
||||
return uri_path
|
||||
|
||||
|
||||
def format_exception(etype, e, exception_locals):
|
||||
"""Consistent formatting for exceptions.
|
||||
|
||||
:param etype: a string describing the exception type.
|
||||
:param e: the exception.
|
||||
:param execption_locals: calling context local variable dict.
|
||||
:returns: a formatted string.
|
||||
"""
|
||||
msg = [_("Error. %(type)s exception: %(exc)s.") %
|
||||
{'type': etype, 'exc': e}]
|
||||
l = dict((k, v) for k, v in six.iteritems(exception_locals)
|
||||
if k != 'request')
|
||||
msg.append(_("locals=[%s]") % str(l))
|
||||
return ' '.join(msg)
|
||||
|
||||
|
||||
def do_request(*args, **kwargs):
|
||||
"""Issue a request to the cluster specified in kwargs.
|
||||
|
||||
:param args: a list of positional arguments.
|
||||
:param kwargs: a list of keyworkds arguments.
|
||||
:returns: the result of the operation loaded into a python
|
||||
object or None.
|
||||
"""
|
||||
cluster = kwargs["cluster"]
|
||||
try:
|
||||
res = cluster.api_client.request(*args)
|
||||
if res:
|
||||
return jsonutils.loads(res)
|
||||
except api_exc.ResourceNotFound:
|
||||
raise exception.NotFound()
|
||||
except api_exc.ReadOnlyMode:
|
||||
raise nsx_exc.MaintenanceInProgress()
|
||||
|
||||
|
||||
def get_single_query_page(path, cluster, page_cursor=None,
|
||||
page_length=1000, neutron_only=True):
|
||||
params = []
|
||||
if page_cursor:
|
||||
params.append("_page_cursor=%s" % page_cursor)
|
||||
params.append("_page_length=%s" % page_length)
|
||||
# NOTE(salv-orlando): On the NSX backend the 'Quantum' tag is still
|
||||
# used for marking Neutron entities in order to preserve compatibility
|
||||
if neutron_only:
|
||||
params.append("tag_scope=quantum")
|
||||
query_params = "&".join(params)
|
||||
path = "%s%s%s" % (path, "&" if (path.find("?") != -1) else "?",
|
||||
query_params)
|
||||
body = do_request(HTTP_GET, path, cluster=cluster)
|
||||
# Result_count won't be returned if _page_cursor is supplied
|
||||
return body['results'], body.get('page_cursor'), body.get('result_count')
|
||||
|
||||
|
||||
def get_all_query_pages(path, cluster):
|
||||
need_more_results = True
|
||||
result_list = []
|
||||
page_cursor = None
|
||||
while need_more_results:
|
||||
results, page_cursor = get_single_query_page(
|
||||
path, cluster, page_cursor)[:2]
|
||||
if not page_cursor:
|
||||
need_more_results = False
|
||||
result_list.extend(results)
|
||||
return result_list
|
||||
|
||||
|
||||
def mk_body(**kwargs):
|
||||
"""Convenience function creates and dumps dictionary to string.
|
||||
|
||||
:param kwargs: the key/value pirs to be dumped into a json string.
|
||||
:returns: a json string.
|
||||
"""
|
||||
return jsonutils.dumps(kwargs, ensure_ascii=False)
|
@ -21,8 +21,8 @@ from oslo_serialization import jsonutils
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import switch
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import switch
|
||||
|
||||
HTTP_GET = "GET"
|
||||
HTTP_POST = "POST"
|
@ -21,7 +21,7 @@ import six
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
|
||||
HTTP_GET = "GET"
|
||||
HTTP_POST = "POST"
|
@ -22,7 +22,7 @@ import six
|
||||
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
|
||||
HTTP_POST = "POST"
|
||||
HTTP_DELETE = "DELETE"
|
@ -24,9 +24,9 @@ from neutron.i18n import _LE, _LI, _LW
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import switch
|
||||
from vmware_nsx.nsxlib import versioning
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import switch
|
||||
from vmware_nsx.nsxlib.mh import versioning
|
||||
|
||||
# @versioning.versioned decorator makes the apparent function body
|
||||
# totally unrelated to the real function. This confuses pylint :(
|
@ -22,7 +22,7 @@ from neutron.common import exceptions
|
||||
from neutron.i18n import _LW
|
||||
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
|
||||
HTTP_GET = "GET"
|
||||
HTTP_POST = "POST"
|
@ -25,7 +25,7 @@ from neutron.i18n import _LE, _LI, _LW
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
|
||||
HTTP_GET = "GET"
|
||||
HTTP_POST = "POST"
|
@ -76,11 +76,11 @@ from vmware_nsx import dhcpmeta_modes
|
||||
from vmware_nsx.extensions import maclearning as mac_ext
|
||||
from vmware_nsx.extensions import networkgw
|
||||
from vmware_nsx.extensions import qos
|
||||
from vmware_nsx.nsxlib import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib import queue as queuelib
|
||||
from vmware_nsx.nsxlib import router as routerlib
|
||||
from vmware_nsx.nsxlib import secgroup as secgrouplib
|
||||
from vmware_nsx.nsxlib import switch as switchlib
|
||||
from vmware_nsx.nsxlib.mh import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib.mh import queue as queuelib
|
||||
from vmware_nsx.nsxlib.mh import router as routerlib
|
||||
from vmware_nsx.nsxlib.mh import secgroup as secgrouplib
|
||||
from vmware_nsx.nsxlib.mh import switch as switchlib
|
||||
|
||||
LOG = logging.getLogger(__name__)
|
||||
|
||||
|
@ -36,8 +36,8 @@ from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.db import networkgw_db
|
||||
from vmware_nsx.db import nsx_models
|
||||
from vmware_nsx.extensions import networkgw
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import l2gateway as l2gwlib
|
||||
from vmware_nsx.tests.unit import vmware
|
||||
from vmware_nsx.tests.unit.vmware import test_nsx_plugin
|
||||
|
||||
|
@ -23,7 +23,7 @@ from neutron import context
|
||||
from neutron.tests.unit.api import test_extensions
|
||||
from vmware_nsx.db import qos_db
|
||||
from vmware_nsx.extensions import qos as ext_qos
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.tests.unit import vmware
|
||||
from vmware_nsx.tests.unit.vmware import test_nsx_plugin
|
||||
|
||||
|
@ -21,9 +21,9 @@ from oslo_serialization import jsonutils
|
||||
from vmware_nsx.api_client import exception
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils as nsx_utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib import switch as switchlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import l2gateway as l2gwlib
|
||||
from vmware_nsx.nsxlib.mh import switch as switchlib
|
||||
from vmware_nsx.tests.unit.vmware.nsxlib import base
|
||||
|
||||
_uuid = test_base._uuid
|
||||
|
@ -22,7 +22,7 @@ import six
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx.nsxlib import lsn as lsnlib
|
||||
from vmware_nsx.nsxlib.mh import lsn as lsnlib
|
||||
|
||||
|
||||
class LSNTestCase(base.BaseTestCase):
|
||||
@ -30,7 +30,7 @@ class LSNTestCase(base.BaseTestCase):
|
||||
def setUp(self):
|
||||
super(LSNTestCase, self).setUp()
|
||||
self.mock_request_p = mock.patch(
|
||||
'vmware_nsx.nsxlib.do_request')
|
||||
'vmware_nsx.nsxlib.mh.do_request')
|
||||
self.mock_request = self.mock_request_p.start()
|
||||
self.cluster = mock.Mock()
|
||||
self.cluster.default_service_cluster_uuid = 'foo'
|
||||
|
@ -18,8 +18,8 @@ import mock
|
||||
from neutron.common import exceptions
|
||||
|
||||
from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import queue as queuelib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import queue as queuelib
|
||||
from vmware_nsx.tests.unit.vmware.nsxlib import base
|
||||
|
||||
|
||||
|
@ -24,9 +24,9 @@ from vmware_nsx.api_client import exception as api_exc
|
||||
from vmware_nsx.api_client import version as ver_module
|
||||
from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import router as routerlib
|
||||
from vmware_nsx.nsxlib import switch as switchlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import router as routerlib
|
||||
from vmware_nsx.nsxlib.mh import switch as switchlib
|
||||
from vmware_nsx.tests.unit.vmware.nsxlib import base
|
||||
|
||||
_uuid = test_base._uuid
|
||||
|
@ -18,8 +18,8 @@ from neutron.common import constants
|
||||
from neutron.common import exceptions
|
||||
from neutron.tests.unit.api.v2 import test_base
|
||||
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import secgroup as secgrouplib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.nsxlib.mh import secgroup as secgrouplib
|
||||
from vmware_nsx.tests.unit.vmware.nsxlib import base
|
||||
|
||||
_uuid = test_base._uuid
|
||||
|
@ -22,7 +22,7 @@ from neutron.common import exceptions
|
||||
from neutron.tests.unit.api.v2 import test_base
|
||||
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx.nsxlib import switch as switchlib
|
||||
from vmware_nsx.nsxlib.mh import switch as switchlib
|
||||
from vmware_nsx.tests.unit.vmware.nsxlib import base
|
||||
|
||||
_uuid = test_base._uuid
|
||||
|
@ -19,8 +19,8 @@ from neutron.tests import base
|
||||
from vmware_nsx.api_client import (
|
||||
version as version_module)
|
||||
from vmware_nsx.api_client import exception
|
||||
from vmware_nsx.nsxlib import router as routerlib
|
||||
from vmware_nsx.nsxlib import versioning
|
||||
from vmware_nsx.nsxlib.mh import router as routerlib
|
||||
from vmware_nsx.nsxlib.mh import versioning
|
||||
|
||||
|
||||
class TestVersioning(base.BaseTestCase):
|
||||
|
@ -28,7 +28,7 @@ from vmware_nsx.common import config # noqa
|
||||
from vmware_nsx.common import exceptions
|
||||
from vmware_nsx.common import sync
|
||||
from vmware_nsx import nsx_cluster
|
||||
from vmware_nsx.nsxlib import lsn as lsnlib
|
||||
from vmware_nsx.nsxlib.mh import lsn as lsnlib
|
||||
from vmware_nsx.tests.unit import vmware
|
||||
|
||||
BASE_CONF_PATH = vmware.get_fake_conf('neutron.conf.test')
|
||||
|
@ -50,7 +50,7 @@ from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import sync
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx.db import db as nsx_db
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.tests.unit import vmware
|
||||
from vmware_nsx.tests.unit.vmware.apiclient import fake
|
||||
from vmware_nsx.tests.unit.vmware import test_utils
|
||||
|
@ -37,7 +37,7 @@ from vmware_nsx.api_client import version
|
||||
from vmware_nsx.common import sync
|
||||
from vmware_nsx.db import db
|
||||
from vmware_nsx import nsx_cluster as cluster
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx import plugin
|
||||
from vmware_nsx.tests.unit import vmware
|
||||
from vmware_nsx.tests.unit.vmware.apiclient import fake
|
||||
|
@ -25,7 +25,7 @@ from vmware_nsx.common import exceptions as nsx_exc
|
||||
from vmware_nsx.common import nsx_utils
|
||||
from vmware_nsx.common import utils
|
||||
from vmware_nsx.db import nsx_models
|
||||
from vmware_nsx import nsxlib
|
||||
from vmware_nsx.nsxlib import mh as nsxlib
|
||||
from vmware_nsx.tests.unit import vmware
|
||||
from vmware_nsx.tests.unit.vmware.nsxlib import base as nsx_base
|
||||
|
||||
@ -105,7 +105,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
ret_value = None, exp_lp_uuid
|
||||
self._mock_port_mapping_db_calls(ret_value)
|
||||
with mock.patch(vmware.nsx_method('query_lswitch_lports',
|
||||
module_name='nsxlib.switch'),
|
||||
module_name='nsxlib.mh.switch'),
|
||||
return_value=[{'uuid': exp_lp_uuid,
|
||||
'_relations': {
|
||||
'LogicalSwitchConfig': {
|
||||
@ -121,7 +121,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
ret_value = None, None
|
||||
self._mock_port_mapping_db_calls(ret_value)
|
||||
with mock.patch(vmware.nsx_method('query_lswitch_lports',
|
||||
module_name='nsxlib.switch'),
|
||||
module_name='nsxlib.mh.switch'),
|
||||
return_value=[{'uuid': exp_lp_uuid,
|
||||
'_relations': {
|
||||
'LogicalSwitchConfig': {
|
||||
@ -135,7 +135,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
ret_value = None, None
|
||||
self._mock_port_mapping_db_calls(ret_value)
|
||||
with mock.patch(vmware.nsx_method('query_lswitch_lports',
|
||||
module_name='nsxlib.switch'),
|
||||
module_name='nsxlib.mh.switch'),
|
||||
return_value=[]):
|
||||
self._verify_get_nsx_switch_and_port_id(None, None)
|
||||
|
||||
@ -152,7 +152,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
exp_ls_uuids = [uuidutils.generate_uuid()]
|
||||
self._mock_network_mapping_db_calls(None)
|
||||
with mock.patch(vmware.nsx_method('get_lswitches',
|
||||
module_name='nsxlib.switch'),
|
||||
module_name='nsxlib.mh.switch'),
|
||||
return_value=[{'uuid': uuid}
|
||||
for uuid in exp_ls_uuids]):
|
||||
self._verify_get_nsx_switch_ids(exp_ls_uuids)
|
||||
@ -162,7 +162,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
# are not found both in the db and in the backend
|
||||
self._mock_network_mapping_db_calls(None)
|
||||
with mock.patch(vmware.nsx_method('get_lswitches',
|
||||
module_name='nsxlib.switch'),
|
||||
module_name='nsxlib.mh.switch'),
|
||||
return_value=[]):
|
||||
self._verify_get_nsx_switch_ids(None)
|
||||
|
||||
@ -179,7 +179,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
exp_lr_uuid = uuidutils.generate_uuid()
|
||||
self._mock_router_mapping_db_calls(None)
|
||||
with mock.patch(vmware.nsx_method('query_lrouters',
|
||||
module_name='nsxlib.router'),
|
||||
module_name='nsxlib.mh.router'),
|
||||
return_value=[{'uuid': exp_lr_uuid}]):
|
||||
self._verify_get_nsx_router_id(exp_lr_uuid)
|
||||
|
||||
@ -188,7 +188,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
# are not found both in the db and in the backend
|
||||
self._mock_router_mapping_db_calls(None)
|
||||
with mock.patch(vmware.nsx_method('query_lrouters',
|
||||
module_name='nsxlib.router'),
|
||||
module_name='nsxlib.mh.router'),
|
||||
return_value=[]):
|
||||
self._verify_get_nsx_router_id(None)
|
||||
|
||||
@ -296,7 +296,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
exp_sec_prof_uuid = uuidutils.generate_uuid()
|
||||
self._mock_sec_group_mapping_db_calls(None)
|
||||
with mock.patch(vmware.nsx_method('query_security_profiles',
|
||||
module_name='nsxlib.secgroup'),
|
||||
module_name='nsxlib.mh.secgroup'),
|
||||
return_value=[{'uuid': exp_sec_prof_uuid}]):
|
||||
self._verify_get_nsx_sec_profile_id(exp_sec_prof_uuid)
|
||||
|
||||
@ -305,7 +305,7 @@ class NsxUtilsTestCase(base.BaseTestCase):
|
||||
# are not found both in the db and in the backend
|
||||
self._mock_sec_group_mapping_db_calls(None)
|
||||
with mock.patch(vmware.nsx_method('query_security_profiles',
|
||||
module_name='nsxlib.secgroup'),
|
||||
module_name='nsxlib.mh.secgroup'),
|
||||
return_value=[]):
|
||||
self._verify_get_nsx_sec_profile_id(None)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user