- try:
- req_serializer = CreateVnfReqSerializer(data=request.data)
- if not req_serializer.is_valid():
- raise NFLCMException(req_serializer.errors)
-
- nf_inst = CreateVnf(request.data).do_biz()
- create_vnf_resp_serializer = VnfInstanceSerializer(data={"id": nf_inst.nfinstid,
- "vnfProvider": nf_inst.vendor,
- "vnfdVersion": nf_inst.version,
- "vnfPkgId": nf_inst.package_id,
- "instantiationState": nf_inst.status})
- if not create_vnf_resp_serializer.is_valid():
- raise NFLCMException(create_vnf_resp_serializer.errors)
- return Response(data=create_vnf_resp_serializer.data, status=status.HTTP_201_CREATED)
- except NFLCMException as e:
- logger.error(e.message)
- return Response(data={'error': '%s' % e.message}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
- except Exception as e:
- logger.error(e.message)
- logger.error(traceback.format_exc())
- return Response(data={'error': 'unexpected exception'}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
+ req_serializer = CreateVnfReqSerializer(data=request.data)
+ if not req_serializer.is_valid():
+ raise NFLCMExceptionBadRequest(req_serializer.errors)
+
+ nf_inst = CreateVnf(request.data).do_biz()
+ rsp_data = {"id": nf_inst.nfinstid,
+ "vnfInstanceName": nf_inst.nf_name,
+ "vnfdId": nf_inst.vnfdid,
+ "vnfProvider": nf_inst.vendor,
+ "vnfSoftwareVersion": nf_inst.vnfSoftwareVersion,
+ "vnfdVersion": nf_inst.version,
+ "vnfPkgId": nf_inst.package_id,
+ "instantiationState": nf_inst.status,
+ "vnfInstanceDescription": nf_inst.nf_desc
+ }
+ create_vnf_resp_serializer = VnfInstanceSerializer(data=rsp_data)
+ if not create_vnf_resp_serializer.is_valid():
+ raise NFLCMException(create_vnf_resp_serializer.errors)
+
+ return Response(data=rsp_data, status=status.HTTP_201_CREATED)