Remove circle reference

We can not import magnum.api.validation because of circle reference.

We can reproduce this bug by "tox -egenconfig" or importing
magnum.api.validation in a python console.

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "magnum/api/validation.py", line 20, in <module>
    from magnum.api.controllers.v1 import utils as api_utils
  File "magnum/api/controllers/v1/__init__.py", line 30, in <module>
    from magnum.api.controllers.v1 import baymodel
  File "magnum/api/controllers/v1/baymodel.py", line 29, in <module>
    from magnum.api import validation
ImportError: cannot import name validation

Change-Id: Ib73d7f1d989b9bc860bfadafa52e9a83996f5de9
Closes-Bug: #1521840
This commit is contained in:
Hua Wang 2015-12-02 12:16:53 +08:00
parent 534e44c546
commit a09ff4bc25
14 changed files with 13 additions and 13 deletions

View File

@ -24,8 +24,8 @@ from magnum.api.controllers import base
from magnum.api.controllers import link
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.common import exception
from magnum.common import policy
from magnum import objects

View File

@ -24,8 +24,8 @@ from magnum.api.controllers import base
from magnum.api.controllers import link
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.api import validation
from magnum.common import clients
from magnum.common import exception

View File

@ -22,7 +22,7 @@ import wsmeext.pecan as wsme_pecan
from magnum.api.controllers import base
from magnum.api.controllers import link
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import utils as api_utils
from magnum.common import exception
from magnum.common import policy
from magnum import objects

View File

@ -24,8 +24,8 @@ from magnum.api.controllers import base
from magnum.api.controllers import link
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.api import validation
from magnum.common import exception
from magnum.common import policy

View File

@ -23,8 +23,8 @@ from magnum.api.controllers import base
from magnum.api.controllers import link
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.common import exception
from magnum.common import policy
from magnum import objects

View File

@ -21,8 +21,8 @@ from magnum.api.controllers import link
from magnum.api.controllers.v1 import base as v1_base
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.api import validation
from magnum.common import exception
from magnum.common import k8s_manifest

View File

@ -22,8 +22,8 @@ from magnum.api.controllers import link
from magnum.api.controllers.v1 import base as v1_base
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.api import validation
from magnum.common import exception
from magnum.common import k8s_manifest

View File

@ -20,8 +20,8 @@ from magnum.api.controllers import link
from magnum.api.controllers.v1 import base as v1_base
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import expose
from magnum.api import utils as api_utils
from magnum.api import validation
from magnum.common import exception
from magnum.common import k8s_manifest

View File

@ -23,7 +23,7 @@ from magnum.api.controllers import base
from magnum.api.controllers import link
from magnum.api.controllers.v1 import collection
from magnum.api.controllers.v1 import types
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import utils as api_utils
from magnum.common import exception
from magnum import objects

View File

@ -17,7 +17,7 @@ import decorator
from oslo_config import cfg
import pecan
from magnum.api.controllers.v1 import utils as api_utils
from magnum.api import utils as api_utils
from magnum.common import exception
from magnum import objects

View File

@ -23,7 +23,7 @@ from magnum.tests.unit.objects import utils as obj_utils
class TestCertObject(base.TestCase):
@mock.patch('magnum.api.controllers.v1.utils.get_rpc_resource')
@mock.patch('magnum.api.utils.get_rpc_resource')
def test_cert_init(self, mock_get_rpc_resource):
cert_dict = apiutils.cert_post_data()
mock_bay = mock.MagicMock()

View File

@ -17,7 +17,7 @@ import jsonpatch
import mock
import wsme
from magnum.api.controllers.v1 import utils
from magnum.api import utils
from magnum.common import exception
from magnum.common import utils as common_utils
from magnum.tests.unit.api import base

View File

@ -188,7 +188,7 @@ class TestValidation(base.BaseTestCase):
assert_raised=True)
@mock.patch('pecan.request')
@mock.patch('magnum.api.controllers.v1.utils.get_rpc_resource')
@mock.patch('magnum.api.utils.get_rpc_resource')
def _test_enforce_network_driver_types_update(
self,
mock_get_rpc_resource,