diff options
author | 2018-03-08 22:05:26 +0800 | |
---|---|---|
committer | 2018-03-10 00:38:17 +0800 | |
commit | 51fde27c2a12f525e94ecd3a83238a46215d9392 (patch) | |
tree | 4b9b72d4048209d410c0f9bc8a25a9561f3fcfa0 /newton/newton/extensions | |
parent | c701ab185721e50cca3d432220361aaa723358cc (diff) |
newton use share library
Change-Id: I0ed8ced042862edf8afa87fec3b457d019e811b4
Issue-ID: MULTICLOUD-138
Signed-off-by: Huang Haibin <haibin.huang@intel.com>
Diffstat (limited to 'newton/newton/extensions')
-rw-r--r-- | newton/newton/extensions/tests/test_epacaps.py | 6 | ||||
-rw-r--r-- | newton/newton/extensions/tests/test_extensions.py | 2 | ||||
-rw-r--r-- | newton/newton/extensions/views/epacaps.py | 44 | ||||
-rw-r--r-- | newton/newton/extensions/views/extensions.py | 58 |
4 files changed, 15 insertions, 95 deletions
diff --git a/newton/newton/extensions/tests/test_epacaps.py b/newton/newton/extensions/tests/test_epacaps.py index 35604165..0588f773 100644 --- a/newton/newton/extensions/tests/test_epacaps.py +++ b/newton/newton/extensions/tests/test_epacaps.py @@ -19,9 +19,9 @@ from django.test import Client from rest_framework import status import unittest -from newton.requests.tests import test_base -from newton.requests.tests import mock_info -from newton.requests.views.util import VimDriverUtils +from newton_base.tests import test_base +from newton_base.tests import mock_info +from newton_base.util import VimDriverUtils class TestEpaCaps(unittest.TestCase): diff --git a/newton/newton/extensions/tests/test_extensions.py b/newton/newton/extensions/tests/test_extensions.py index 7b92b61e..ebdb2168 100644 --- a/newton/newton/extensions/tests/test_extensions.py +++ b/newton/newton/extensions/tests/test_extensions.py @@ -16,7 +16,7 @@ from django.test import Client from rest_framework import status import unittest -from newton.requests.tests import test_base +from newton_base.tests import test_base class TestExtensions(unittest.TestCase): diff --git a/newton/newton/extensions/views/epacaps.py b/newton/newton/extensions/views/epacaps.py index de5a24bf..77542b31 100644 --- a/newton/newton/extensions/views/epacaps.py +++ b/newton/newton/extensions/views/epacaps.py @@ -16,48 +16,18 @@ import logging import json import traceback -from keystoneauth1.exceptions import HttpError -from rest_framework import status -from rest_framework.response import Response -from rest_framework.views import APIView +from django.conf import settings -from newton.pub.config import config -from newton.pub.exceptions import VimDriverNewtonException -from newton.requests.views.util import VimDriverUtils -from newton.pub.msapi import extsys + +from newton_base.extensions import epacaps as newton_epacaps logger = logging.getLogger(__name__) +DEBUG=True + -class EpaCaps(APIView): +class EpaCaps(newton_epacaps.EpaCaps): def __init__(self): - self.proxy_prefix = config.MULTICLOUD_PREFIX + self.proxy_prefix = settings.MULTICLOUD_PREFIX self._logger = logger - - def get(self, request, vimid=""): - logger.debug("EpaCaps--get::data> %s" % request.data) - logger.debug("EpaCaps--get::vimid> %s" - % vimid) - try: - - vim = VimDriverUtils.get_vim_info(vimid) - caps_json = json.loads(vim['cloud_epa_caps']) - - cloud_owner, cloud_region_id = extsys.decode_vim_id(vimid) - content = { - "cloud-owner":cloud_owner, - "cloud-region-id":cloud_region_id, - "vimid":vimid, - "cloud-epa-caps": caps_json, - } - return Response(data=content, status=status.HTTP_200_OK) - except VimDriverNewtonException as e: - return Response(data={'error': e.content}, status=e.status_code) - except HttpError as e: - logger.error("HttpError: status:%s, response:%s" % (e.http_status, e.response.json())) - return Response(data=e.response.json(), status=e.http_status) - except Exception as e: - logger.error(traceback.format_exc()) - return Response(data={'error': str(e)}, - status=status.HTTP_500_INTERNAL_SERVER_ERROR) diff --git a/newton/newton/extensions/views/extensions.py b/newton/newton/extensions/views/extensions.py index 321b86fc..851bc7ea 100644 --- a/newton/newton/extensions/views/extensions.py +++ b/newton/newton/extensions/views/extensions.py @@ -13,66 +13,16 @@ # limitations under the License. import logging -import json -import traceback -from django.core.cache import cache - -from keystoneauth1 import access -from keystoneauth1.access import service_catalog -from keystoneauth1.exceptions import HttpError -from rest_framework import status -from rest_framework.response import Response -from rest_framework.views import APIView - -from newton.pub.config import config -from newton.pub.exceptions import VimDriverNewtonException -from newton.requests.views.util import VimDriverUtils -from newton.pub.msapi import extsys +from django.conf import settings +from newton_base.extensions import extensions as newton_extensions logger = logging.getLogger(__name__) DEBUG=True - -class Extensions(APIView): +class Extensions(newton_extensions.Extensions): def __init__(self): - self.proxy_prefix = config.MULTICLOUD_PREFIX self._logger = logger - - def get(self, request, vimid=""): - logger.debug("Extensions--get::data> %s" % request.data) - logger.debug("Extensions--get::vimid> %s" - % vimid) - try: - cloud_owner, cloud_region_id = extsys.decode_vim_id(vimid) - registered_extensions = \ - [ - { - "alias": "epa-caps", - "description": "Multiple network support", - "name": "EPACapsQuery", - "url": self.proxy_prefix + "/%s/extensions/epa-caps" \ - % (vimid), - "spec": "" - } - ] - - content = { - "cloud-owner":cloud_owner, - "cloud-region-id":cloud_region_id, - "vimid":vimid, - "extensions": registered_extensions - } - return Response(data=content, status=status.HTTP_200_OK) - - except VimDriverNewtonException as e: - return Response(data={'error': e.content}, status=e.status_code) - except HttpError as e: - logger.error("HttpError: status:%s, response:%s" % (e.http_status, e.response.json())) - return Response(data=e.response.json(), status=e.http_status) - except Exception as e: - logger.error(traceback.format_exc()) - return Response(data={'error': str(e)}, - status=status.HTTP_500_INTERNAL_SERVER_ERROR) + self.proxy_prefix = settings.MULTICLOUD_PREFIX |