aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfujinhua <fu.jinhua@zte.com.cn>2018-02-09 09:21:04 +0800
committerfujinhua <fu.jinhua@zte.com.cn>2018-02-09 09:52:12 +0800
commit726b1dc6e7830dea06ff5dee0a047282b6315af4 (patch)
treea8b265cbe49083a3fd10ef5483a56a5b4ba02554
parent2c54f04cf5efd570c9a29d3743e3cb519d0f949f (diff)
Add query vim swagger generate logic
Change-Id: I880a972db453f17c6655e64bb4b9979a74057f91 Issue-ID: VFC-714 Signed-off-by: fujinhua <fu.jinhua@zte.com.cn>
-rw-r--r--lcm/ns/vnfs/serializers.py6
-rw-r--r--lcm/ns/vnfs/views.py13
-rw-r--r--lcm/pub/msapi/extsys.py2
3 files changed, 17 insertions, 4 deletions
diff --git a/lcm/ns/vnfs/serializers.py b/lcm/ns/vnfs/serializers.py
index ec3ab16e..7a74b167 100644
--- a/lcm/ns/vnfs/serializers.py
+++ b/lcm/ns/vnfs/serializers.py
@@ -210,8 +210,8 @@ class VimInfoRespSerializer(serializers.Serializer):
url = serializers.CharField(help_text="Url of VIM", required=True)
userName = serializers.CharField(help_text="User Name of VIM", required=True)
password = serializers.CharField(help_text="Password of VIM", required=True)
- tenantId = serializers.CharField(help_text="Tenant ID of VIM", required=True)
- tenant = serializers.CharField(help_text="Default Tenant of VIM", required=True)
+ tenantId = serializers.CharField(help_text="Tenant ID of VIM", required=False, allow_null=True, allow_blank=True)
+ tenant = serializers.CharField(help_text="Default Tenant of VIM", required=False, allow_null=True, allow_blank=True)
vendor = serializers.CharField(help_text="Vendor of VIM", required=False, allow_null=True, allow_blank=True)
version = serializers.CharField(help_text="Version of VIM", required=False, allow_null=True, allow_blank=True)
description = serializers.CharField(help_text="Description of VIM", required=False, allow_null=True, allow_blank=True)
@@ -220,4 +220,4 @@ class VimInfoRespSerializer(serializers.Serializer):
createTime = serializers.CharField(help_text="Create Time of VIM", required=False, allow_null=True, allow_blank=True)
sslCacert = serializers.CharField(help_text="SSL Cacert of VIM", required=False, allow_null=True, allow_blank=True)
sslInsecure = serializers.CharField(help_text="SSL Insecure of VIM", required=False, allow_null=True, allow_blank=True)
- status = serializers.CharField(help_text="Status of VIM", required=True)
+ status = serializers.CharField(help_text="Status of VIM", required=False, allow_null=True, allow_blank=True)
diff --git a/lcm/ns/vnfs/views.py b/lcm/ns/vnfs/views.py
index a959d7e8..59762e69 100644
--- a/lcm/ns/vnfs/views.py
+++ b/lcm/ns/vnfs/views.py
@@ -45,6 +45,7 @@ from lcm.ns.vnfs.serializers import ScaleVnfRespSerializer
from lcm.ns.vnfs.serializers import VerifyVnfReqSerializer
from lcm.ns.vnfs.serializers import VerifyVnfRespSerializer
from lcm.ns.vnfs.serializers import VnfmInfoRespSerializer
+from lcm.ns.vnfs.serializers import VimInfoRespSerializer
logger = logging.getLogger(__name__)
@@ -278,10 +279,22 @@ class NfVnfmInfoView(APIView):
class NfVimInfoView(APIView):
+ @swagger_auto_schema(
+ request_body=None,
+ responses={
+ status.HTTP_200_OK: VimInfoRespSerializer(),
+ status.HTTP_500_INTERNAL_SERVER_ERROR: "Inner error"
+ }
+ )
def get(self, request, vimid):
logger.debug("NfVimInfoView--get::> %s" % vimid)
try:
vim_info = get_vim_by_id(vimid)
+
+ resp_serializer = VimInfoRespSerializer(data=vim_info)
+ if not resp_serializer.is_valid():
+ raise Exception(resp_serializer.errors)
+
except NSLCMException as e:
logger.error(e.message)
return Response(data={'error': '%s' % e.message}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
diff --git a/lcm/pub/msapi/extsys.py b/lcm/pub/msapi/extsys.py
index e7f83d65..65b7d032 100644
--- a/lcm/pub/msapi/extsys.py
+++ b/lcm/pub/msapi/extsys.py
@@ -86,7 +86,7 @@ def convert_vim_info(vim_info_aai):
"type": ignore_case_get(esr_system_info[0], "type"),
"createTime": "",
"sslCacert": ignore_case_get(esr_system_info[0], "ssl-cacert"),
- "sslInsecure": ignore_case_get(esr_system_info[0], "ssl-insecure"),
+ "sslInsecure": str(ignore_case_get(esr_system_info[0], "ssl-insecure")),
"status": ignore_case_get(esr_system_info[0], "system-status")
}
return vim_info