def test_job(self):
JobModel(jobid=self.job_id, jobtype='VNF', jobaction='INST', resid='1').save()
JobStatusModel(indexid=1, jobid=self.job_id, status='inst', progress=20, descp='inst').save()
- response = self.client.get("/openoapi/nslcm/v1/jobs/%s" % self.job_id)
+ response = self.client.get("/api/nslcm/v1/jobs/%s" % self.job_id)
self.failUnlessEqual(status.HTTP_200_OK, response.status_code)
from lcm.jobs.views import JobView
urlpatterns = patterns('',
- url(r'^openoapi/nslcm/v1/jobs/(?P<job_id>[0-9a-zA-Z_-]+)$', JobView.as_view()),
+ url(r'^api/nslcm/v1/jobs/(?P<job_id>[0-9a-zA-Z_-]+)$', JobView.as_view()),
)
urlpatterns = format_suffix_patterns(urlpatterns)
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/ns/vls",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/ns/vls",
"path": {},
"query": {},
"body": {
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/ns/vnfs",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/ns/vnfs",
"path": {},
"query": {},
"body": {
"method": "GET",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/ns/vnfs/{vnfInstId}",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/ns/vnfs/{vnfInstId}",
"path": {
"vnfInstId": {
"type": "plan",
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/ns/sfcs",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/ns/sfcs",
"path": {},
"query": {},
"body": {
"method": "GET",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/ns/sfcs/{sfcInstId}",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/ns/sfcs/{sfcInstId}",
"path": {
"sfcInstId": {
"type": "plan",
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}",
"path": {
"jobId": {
"type": "plan",
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}",
"path": {
"jobId": {
"type": "plan",
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}",
"path": {
"jobId": {
"type": "plan",
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/ns/{nsInstanceId}/postdeal",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/ns/{nsInstanceId}/postdeal",
"path": {
"nsInstanceId": {
"type": "plan",
"method": "POST",
"accept": "application/json",
"contentType": "application/json",
- "url": "http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}",
+ "url": "http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}",
"path": {
"jobId": {
"type": "plan",
<assign name="createVL_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/ns/vls</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/ns/vls</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="jobstatus_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="createVNF_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/ns/vnfs</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/ns/vnfs</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="query_vnf_nslcm_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/ns/vnfs/{vnfInstId}</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/ns/vnfs/{vnfInstId}</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="jobstatus_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="createSFC_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/ns/sfcs</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/ns/sfcs</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="querySFC_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/ns/sfcs/{sfcInstId}</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/ns/sfcs/{sfcInstId}</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="jobstatus_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="post_do_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/ns/{nsInstanceId}/postdeal</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/ns/{nsInstanceId}/postdeal</literal>
</from>
<to variable="url"></to>
</copy>
<assign name="jobstatus_URL">
<copy>
<from>
- <literal>http://127.0.0.1:80/openoapi/nslcm/v1/jobs/{jobId}</literal>
+ <literal>http://127.0.0.1:80/api/nslcm/v1/jobs/{jobId}</literal>
</from>
<to variable="url"></to>
</copy>
"dest_ip_range": self.concat_str(self.dest_ip_range)
}
# req_param = json.JSONEncoder().encoding(data)
- # url = "/openoapi/sdncdriver/v1.0/createflowclassfier"
+ # url = "/api/sdncdriver/v1.0/createflowclassfier"
# ret = req_by_msb(url,"POST", data)
# if ret[0] > 0:
# logger.error('Send Flow Classifier request to Driver failed.')
"symmetric": self.symmetric
}
- # url = "/openoapi/sdncdriver/v1.0/createchain"
+ # url = "/api/sdncdriver/v1.0/createchain"
# req_param = json.JSONEncoder.encoding(data)
# ret = req_by_msb(url, "POST", req_param)
# ret = req_by_msb("OPENAPI_CREATE_SERVICE_PORT_CHAIN",data)
# try:
# logger.warn("query sdncontroller by id begins:")
#
- # url = "/openoapi/extsys/v1/sdncontrollers/%s" % (self.sdnControllerId)
+ # url = "/api/extsys/v1/sdncontrollers/%s" % (self.sdnControllerId)
# ret = req_by_msb(url, "GET")
# if ret[0] > 0:
# logger.error('query sdncontroller failed.')
from lcm.ns.sfcs.views import SfcView, SfcInstanceView, PortPairGpView, FlowClaView, PortChainView
urlpatterns = patterns('',
- url(r'^openoapi/nslcm/v1/ns/sfcs$', SfcView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/sfcs/(?P<sfc_inst_id>[0-9a-zA-Z_-]+)$', SfcDetailView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/sfc_instance$', SfcInstanceView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/create_port_pair_group$', PortPairGpView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/create_flow_classifier$', FlowClaView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/create_port_chain$', PortChainView.as_view()),
+ url(r'^api/nslcm/v1/ns/sfcs$', SfcView.as_view()),
+ url(r'^api/nslcm/v1/ns/sfcs/(?P<sfc_inst_id>[0-9a-zA-Z_-]+)$', SfcDetailView.as_view()),
+ url(r'^api/nslcm/v1/ns/sfc_instance$', SfcInstanceView.as_view()),
+ url(r'^api/nslcm/v1/ns/create_port_pair_group$', PortPairGpView.as_view()),
+ url(r'^api/nslcm/v1/ns/create_flow_classifier$', FlowClaView.as_view()),
+ url(r'^api/nslcm/v1/ns/create_port_chain$', PortChainView.as_view()),
)
urlpatterns = format_suffix_patterns(urlpatterns)
"version": "1.0.0",
"title": "ZTE vManager Service rest API"
},
- "basePath": "/openoapi/nslcm/v1",
+ "basePath": "/api/nslcm/v1",
"tags": [
{
"name": "lcm Resource"
# "context": json.dumps(nsd_model)
# }
# mock_vals = {
-# "/openoapi/extsys/v1/sdncontrollers/test":
+# "/api/extsys/v1/sdncontrollers/test":
# [0, json.JSONEncoder().encode({"url": "url_1"}), '200'],
-# "/openoapi/sdncdriver/v1.0/createflowclassfier":
+# "/api/sdncdriver/v1.0/createflowclassfier":
# [0, json.JSONEncoder().encode({"id": "test_id_1"}), '200'],
-# "/openoapi/microservices/v1/services":
+# "/api/microservices/v1/services":
# [0, None, '200']
#
# }
# return mock_vals[args[4]]
#
# mock_call_req.side_effect = side_effect
-# resp = self.client.post("/openoapi/nslcm/v1/ns/create_flow_classifier", data)
+# resp = self.client.post("/api/nslcm/v1/ns/create_flow_classifier", data)
# ret = FPInstModel.objects.get(fpinstid="fp_inst_1")
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
# self.assertEqual("test_id_1", ret.flowclassifiers)
# "context": json.dumps(nsd_model)
# }
# mock_vals = {
-# "/openoapi/extsys/v1/sdncontrollers/test_sdncontrollerid":
+# "/api/extsys/v1/sdncontrollers/test_sdncontrollerid":
# [0, json.JSONEncoder().encode({"url": "url_1"}), '200'],
-# "/openoapi/sdncdriver/v1.0/createportchain":
+# "/api/sdncdriver/v1.0/createportchain":
# [0, json.JSONEncoder().encode({"id": "test_id_1"}), '200'],
-# "/openoapi/microservices/v1/services":
+# "/api/microservices/v1/services":
# [0, None, '200']
# }
#
# return mock_vals[args[4]]
#
# mock_call_req.side_effect = side_effect
-# resp = self.client.post("/openoapi/nslcm/v1/ns/create_port_chain", data)
+# resp = self.client.post("/api/nslcm/v1/ns/create_port_chain", data)
# ret = FPInstModel.objects.get(fpinstid="fp_inst_1")
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
# self.assertEqual("test_id_1", ret.sfcid)
# "context": json.dumps(nsd_model)
# }
# mock_vals = {
-# "/openoapi/extsys/v1/sdncontrollers/sdn_controller_1":
+# "/api/extsys/v1/sdncontrollers/sdn_controller_1":
# [0, json.JSONEncoder().encode({"url": "url_1"}), '200'],
-# "/openoapi/sdncdriver/v1.0/createportpair":
+# "/api/sdncdriver/v1.0/createportpair":
# [0, json.JSONEncoder().encode({"id": "createportpair_id"}), '200'],
-# "/openoapi/sdncdriver/v1.0/createportpairgroup":
+# "/api/sdncdriver/v1.0/createportpairgroup":
# [0, json.JSONEncoder().encode({"id": "createportpairgroup_id"}), '200'],
-# "/openoapi/microservices/v1/services":
+# "/api/microservices/v1/services":
# [0, None, '200']
# }
#
# return mock_vals[args[4]]
#
# mock_call_req.side_effect = side_effect
-# resp = self.client.post("/openoapi/nslcm/v1/ns/create_port_pair_group", data)
+# resp = self.client.post("/api/nslcm/v1/ns/create_port_pair_group", data)
# rest = json.loads(FPInstModel.objects.get(fpinstid="fp_inst_1").portpairgroups)[0]
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
# self.assertEqual("createportpairgroup_id", rest["groupid"])
# "sdncontrollerid": "sdnControllerId_1"
# }
#
-# resp = self.client.post("/openoapi/nslcm/v1/ns/sfc_instance", data, format='json')
+# resp = self.client.post("/api/nslcm/v1/ns/sfc_instance", data, format='json')
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
#
# @mock.patch.object(extsys, "get_sdn_controller_by_id")
# }
# mock_create_flow_classfier.return_value = [0, json.dumps({'id': '1'})]
# mock_get_sdn_controller_by_id.return_value = json.loads('{"test":"test_name","url":"url_add"}')
-# resp = self.client.post("/openoapi/nslcm/v1/ns/create_flow_classifier", data)
+# resp = self.client.post("/api/nslcm/v1/ns/create_flow_classifier", data)
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
#
# @mock.patch.object(extsys, "get_sdn_controller_by_id")
# mock_create_port_pair.return_value = [0, json.dumps({'id': '1'})]
# mock_create_port_pair_group.return_value = [0, json.dumps({'id': '1'})]
# mock_get_sdn_controller_by_id.return_value = json.loads('{"test":"test_name","url":"url_add"}')
-# resp = self.client.post("/openoapi/nslcm/v1/ns/create_port_pair_group", data)
+# resp = self.client.post("/api/nslcm/v1/ns/create_port_pair_group", data)
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
#
# @mock.patch.object(extsys, "get_sdn_controller_by_id")
# self.update_fp_inst_data()
# mock_create_port_chain.return_value = [0, json.dumps({'id': '1'})]
# mock_get_sdn_controller_by_id.return_value = json.loads('{"test":"test_name","url":"url_add"}')
-# resp = self.client.post("/openoapi/nslcm/v1/ns/create_port_chain", data)
+# resp = self.client.post("/api/nslcm/v1/ns/create_port_chain", data)
# self.assertEqual(resp.status_code, status.HTTP_200_OK)
#
# # @mock.patch.object(restcall, 'call_req')
# # "sdncontrollerid": "sdnControllerId_1"
# # }
# #
-# # resp = self.client.post("/openoapi/nslcm/v1/ns/sfc", data, format='json')
+# # resp = self.client.post("/api/nslcm/v1/ns/sfc", data, format='json')
# # self.assertEqual(resp.status_code, status.HTTP_200_OK)
#
# def update_fp_inst_data(self):
# "fpindex": "fpd_1",
# "sdncontrollerid": "sdnControllerId_1"
# }
-# resp = self.client.post("/openoapi/nslcm/v1/ns/sfc_instance", data, format='json')
+# resp = self.client.post("/api/nslcm/v1/ns/sfc_instance", data, format='json')
#
# vnffg = VNFFGInstModel.objects.get(vnffginstid="vnffg_inst_1")
# ret = FPInstModel.objects.get(fpinstid=resp.data["fpinstid"])
def test_sfc_delete_failed(self):
- response = self.client.delete("/openoapi/nslcm/v1/ns/sfcs/%s" % "notExist")
+ response = self.client.delete("/api/nslcm/v1/ns/sfcs/%s" % "notExist")
expect_resp_data = {"result": 0, "detail": "sfc is not exist or has been already deleted"}
self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
self.assertEqual(expect_resp_data, response.data)
sfcid="10", flowclassifiers="11",
portpairgroups=json.JSONEncoder().encode([{"groupid":"98","portpair":"99"}])
).save()
- response = self.client.delete("/openoapi/nslcm/v1/ns/sfcs/%s" % sfc_inst_id)
+ response = self.client.delete("/api/nslcm/v1/ns/sfcs/%s" % sfc_inst_id)
expect_resp_data = {"result": 0, "detail": "delete sfc success"}
self.assertEqual(expect_resp_data, response.data)
def test_sfc_get_failed(self):
sfc_inst_id="10"
- response = self.client.get("/openoapi/nslcm/v1/ns/sfcs/%s" % sfc_inst_id)
+ response = self.client.get("/api/nslcm/v1/ns/sfcs/%s" % sfc_inst_id)
self.assertEqual(status.HTTP_404_NOT_FOUND, response.status_code)
def test_sfc_get_success(self):
symmetric="5", policyinfo="6", forworderpaths="7", status="8", sdncontrollerid="9",
sfcid="10", flowclassifiers="11",
portpairgroups="12").save()
- response = self.client.get("/openoapi/nslcm/v1/ns/sfcs/%s" % sfc_inst_id)
+ response = self.client.get("/api/nslcm/v1/ns/sfcs/%s" % sfc_inst_id)
expect_resp_data={'sfcName': 'xxx', 'sfcInstId': '10', 'sfcStatus': '8'}
self.assertEqual(expect_resp_data, response.data)
@mock.patch.object(restcall, "call_req")
def test_delete_sfc(self, mock_req_by_rest):
mock_req_by_rest.return_value = [0, '{"test":"test_name","url":"url_add"}']
- response = self.client.delete("/openoapi/nslcm/v1/ns/sfcs/%s" % self.sfc_inst_id)
+ response = self.client.delete("/api/nslcm/v1/ns/sfcs/%s" % self.sfc_inst_id)
self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
expect_resp_data = {"result": 0, "detail": "delete sfc success"}
self.assertEqual(expect_resp_data, response.data)
if FPInstModel.objects.filter(fpinstid=self.sfc_inst_id):
self.fail()
- response = self.client.delete("/openoapi/nslcm/v1/ns/sfcs/%s" % "notExist")
+ response = self.client.delete("/api/nslcm/v1/ns/sfcs/%s" % "notExist")
self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
expect_resp_data = {"result": 0, "detail": "sfc is not exist or has been already deleted"}
self.assertEqual(expect_resp_data, response.data)
def test_query_sfc(self):
- response = self.client.get("/openoapi/nslcm/v1/ns/sfcs/%s" % self.sfc_inst_id)
+ response = self.client.get("/api/nslcm/v1/ns/sfcs/%s" % self.sfc_inst_id)
self.assertEqual(status.HTTP_200_OK, response.status_code)
expect_resp_data = {'sfcInstId': self.sfc_inst_id,
'sfcStatus': self.status,
'sfcName': "xxx"}
self.assertEqual(expect_resp_data, response.data)
- response = self.client.get("/openoapi/nslcm/v1/ns/sfcs/%s" % "notExist")
+ response = self.client.get("/api/nslcm/v1/ns/sfcs/%s" % "notExist")
self.assertEqual(status.HTTP_404_NOT_FOUND, response.status_code)
'nsdid': self.nsd_id,
'nsname': 'ns',
'description': 'description'}
- response = self.client.post("/openoapi/nslcm/v1/ns", data=data)
+ response = self.client.post("/api/nslcm/v1/ns", data=data)
self.failUnlessEqual(status.HTTP_201_CREATED, response.status_code)
def test_ns_instant_ok(self, mock_convert_nsd_model, mock_call_req):
mock_convert_nsd_model.return_value = self.context
mock_vals = {
- "/openoapi/catalog/v1/csars/7/files?relativePath=abc.yaml":
+ "/api/catalog/v1/csars/7/files?relativePath=abc.yaml":
[0, '{"downloadUri":"http://test.yaml", "localPath":"./test.yaml"}', '200'],
- "/openoapi/tosca/v1/indirect/plan":
+ "/api/tosca/v1/indirect/plan":
[0, '{"description":"", "metadata":{}, "nodes":[]}', '200'],
- "/openoapi/catalog/v1/servicetemplates/2/operations":
+ "/api/catalog/v1/servicetemplates/2/operations":
[0, '[{"name":"LCM", "processId":"{http://www.open-o.org/tosca/nfv/2015/12}init-16"}]', '200'],
- "/openoapi/wso2bpel/v1/process/instance":
+ "/api/wso2bpel/v1/process/instance":
[0, '{"status": 1}', '200']}
def side_effect(*args):
'nsInstanceId': "123", 'instanceId': "234", 'resourceUrl': "", 'callbackId': "",
'additionalParamForVnf': "[{\"b\":1},{\"c\":{\"d\":\"2\"}}]",
'additionalParamForNs': "[{\"a\":3},{\"e\":{\"f\":\"4\"}}]", 'flavorParams': ""}
- resp = self.client.post("/openoapi/nslcm/v1/ns/123/instantiate", data, format='json')
+ resp = self.client.post("/api/nslcm/v1/ns/123/instantiate", data, format='json')
self.assertEqual(resp.status_code, status.HTTP_200_OK)
"""
def test_swagger_ok(self):
- resp = self.client.get("/openoapi/nslcm/v1/swagger.json", format='json')
+ resp = self.client.get("/api/nslcm/v1/swagger.json", format='json')
self.assertEqual(resp.status_code, status.HTTP_200_OK)
def test_ns_instant_ok(self, mock_convert_nsd_model, mock_call_req):
mock_convert_nsd_model.return_value = self.context
mock_vals = {
- "/openoapi/catalog/v1/csars/7/files?relativePath=abc.yaml":
+ "/api/catalog/v1/csars/7/files?relativePath=abc.yaml":
[0, '{"downloadUri":"http://test.yaml", "localPath":"./test.yaml"}', '200'],
- "/openoapi/tosca/v1/indirect/plan":
+ "/api/tosca/v1/indirect/plan":
[0, '{"description":"", "metadata":{}, "nodes":[]}', '200'],
- "/openoapi/catalog/v1/servicetemplates/2/operations":
+ "/api/catalog/v1/servicetemplates/2/operations":
[0, '[{"name":"LCM", "processId":"{http://www.open-o.org/tosca/nfv/2015/12}init-16"}]', '200'],
- "/openoapi/wso2bpel/v1/process/instance":
+ "/api/wso2bpel/v1/process/instance":
[0, '{"status": 1}', '200']}
def side_effect(*args):
'nsInstanceId': "123", 'instanceId': "234", 'resourceUrl': "", 'callbackId': "",
'additionalParamForVnf': "[{\"b\":1},{\"c\":{\"d\":\"2\"}}]",
'additionalParamForNs': "[{\"a\":3},{\"e\":{\"f\":\"4\"}}]", 'flavorParams': ""}
- resp = self.client.post("/openoapi/nslcm/v1/ns/123/instantiate", data, format='json')
+ resp = self.client.post("/api/nslcm/v1/ns/123/instantiate", data, format='json')
self.assertEqual(resp.status_code, status.HTTP_200_OK)
"""
@mock.patch.object(NSManualScaleService, 'run')
'nsdid': self.nsd_id,
'nsname': 'ns',
'description': 'description'}
- response = self.client.post("/openoapi/nslcm/v1/ns/%s/scale"%self.nsd_id, data=data)
+ response = self.client.post("/api/nslcm/v1/ns/%s/scale"%self.nsd_id, data=data)
self.failUnlessEqual(status.HTTP_202_ACCEPTED, response.status_code)
@mock.patch.object(restcall, 'call_req')
self.assertTrue(NSInstModel.objects.get(id=self.ns_inst_id).status, NS_INST_STATUS.ACTIVE)
def test_swagger_ok(self):
- resp = self.client.get("/openoapi/nslcm/v1/swagger.json", format='json')
+ resp = self.client.get("/api/nslcm/v1/swagger.json", format='json')
self.assertEqual(resp.status_code, status.HTTP_200_OK)
req_data = {
"terminationType": "forceful",
"gracefulTerminationTimeout": "600"}
- response = self.client.post("/openoapi/nslcm/v1/ns/%s/terminate" % self.ns_inst_id, data=req_data)
+ response = self.client.post("/api/nslcm/v1/ns/%s/terminate" % self.ns_inst_id, data=req_data)
self.failUnlessEqual(status.HTTP_202_ACCEPTED, response.status_code)
- response = self.client.delete("/openoapi/nslcm/v1/ns/%s" % self.ns_inst_id)
+ response = self.client.delete("/api/nslcm/v1/ns/%s" % self.ns_inst_id)
self.failUnlessEqual(status.HTTP_204_NO_CONTENT, response.status_code)
@mock.patch.object(restcall, "call_req")
job_id = JobUtil.create_job("VNF", JOB_TYPE.TERMINATE_VNF, self.nf_inst_id)
mock_vals = {
- "/openoapi/nslcm/v1/ns/vls/1":
+ "/api/nslcm/v1/ns/vls/1":
[0, json.JSONEncoder().encode({"jobId": self.job_id}), '200'],
- "/openoapi/nslcm/v1/ns/sfcs/1":
+ "/api/nslcm/v1/ns/sfcs/1":
[0, json.JSONEncoder().encode({"jobId": self.job_id}), '200'],
- "/openoapi/nslcm/v1/ns/vnfs/1":
+ "/api/nslcm/v1/ns/vnfs/1":
[0, json.JSONEncoder().encode({}), '200'],
- "/openoapi/ztevmanagerdriver/v1/jobs/" + self.job_id + "&responseId=0":
+ "/api/ztevmanagerdriver/v1/jobs/" + self.job_id + "&responseId=0":
[0, json.JSONEncoder().encode({"jobid": self.job_id,
"responsedescriptor": {"progress": "100",
"status": JOB_MODEL_STATUS.FINISHED,
"nsInstanceId": self.ns_inst_id,
"context": json.JSONEncoder().encode(self.context),
"vlindex": vl_id}
- response = self.client.post("/openoapi/nslcm/v1/ns/vls", data=req_data)
+ response = self.client.post("/api/nslcm/v1/ns/vls", data=req_data)
self.assertEqual(status.HTTP_201_CREATED, response.status_code)
self.assertEqual(0, response.data["result"])
'{"test":"test_name","name":"vim_name","type":"type_name","url":"url_add"'
',"userName":"user_name","password":"password","tenant":"tenant"}']
mock_create_network.return_value = [1, (1)]
- response = self.client.post("/openoapi/nslcm/v1/ns/vls", data=req_data)
+ response = self.client.post("/api/nslcm/v1/ns/vls", data=req_data)
retinfo = {"detail": "vl instantiation failed, detail message: Send post vl request to vim failed."}
self.assertEqual(retinfo["detail"], response.data["detail"])
mock_req_by_rest.return_value = [0,
'{"test":"test_name","name":"vim_name","type":"type_name","url":"url_add"'
',"userName":"user_name","password":"password","tenant":"tenant"}']
- response = self.client.delete("/openoapi/nslcm/v1/ns/vls/%s" % self.vl_inst_id)
+ response = self.client.delete("/api/nslcm/v1/ns/vls/%s" % self.vl_inst_id)
self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
expect_resp_data = {"result": 0, "detail": "delete vl success"}
self.assertEqual(expect_resp_data, response.data)
if VLInstModel.objects.filter(vlinstanceid=self.vl_inst_id):
self.fail()
- response = self.client.delete("/openoapi/nslcm/v1/ns/vls/%s" % "notExist")
+ response = self.client.delete("/api/nslcm/v1/ns/vls/%s" % "notExist")
self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
expect_resp_data = {"result": 0, "detail": "vl is not exist or has been already deleted"}
self.assertEqual(expect_resp_data, response.data)
def test_query_vl(self):
- response = self.client.get("/openoapi/nslcm/v1/ns/vls/%s" % self.vl_inst_id)
+ response = self.client.get("/api/nslcm/v1/ns/vls/%s" % self.vl_inst_id)
self.assertEqual(status.HTTP_200_OK, response.status_code)
expect_resp_data = {'vlId': self.vl_inst_id, 'vlName': self.vl_name, 'vlStatus': "active"}
self.assertEqual(expect_resp_data, response.data)
- response = self.client.get("/openoapi/nslcm/v1/ns/vls/%s" % "notExist")
+ response = self.client.get("/api/nslcm/v1/ns/vls/%s" % "notExist")
self.assertEqual(status.HTTP_404_NOT_FOUND, response.status_code)
NfInstModel.objects.all().delete()
def test_get_vnf(self):
- response = self.client.get("/openoapi/nslcm/v1/ns/vnfs/%s" % self.nf_inst_id)
+ response = self.client.get("/api/nslcm/v1/ns/vnfs/%s" % self.nf_inst_id)
self.failUnlessEqual(status.HTTP_200_OK, response.status_code)
context = json.loads(response.content)
self.failUnlessEqual(self.nf_inst_id, context['vnfInstId'])
@mock.patch.object(CreateVnfs, 'run')
def test_create_vnf(self, mock_run):
- response = self.client.post("/openoapi/nslcm/v1/ns/vnfs", data=self.data)
+ response = self.client.post("/api/nslcm/v1/ns/vnfs", data=self.data)
self.failUnlessEqual(status.HTTP_202_ACCEPTED, response.status_code)
context = json.loads(response.content)
self.assertTrue(NfInstModel.objects.filter(nfinstid=context['vnfInstId']).exists())
@mock.patch.object(restcall, 'call_req')
def test_create_vnf_thread(self, mock_call_req):
mock_vals = {
- "/openoapi/ztevmanagerdriver/v1/1/vnfs":
+ "/api/ztevmanagerdriver/v1/1/vnfs":
[0, json.JSONEncoder().encode({"jobId": self.job_id, "vnfInstanceId": 3}), '200'],
- "/openoapi/extsys/v1/vnfms/1":
+ "/api/extsys/v1/vnfms/1":
[0, json.JSONEncoder().encode({"name": 'vnfm1'}), '200'],
- "/openoapi/resmgr/v1/vnf":
+ "/api/resmgr/v1/vnf":
[0, json.JSONEncoder().encode({}), '200'],
- "/openoapi/resmgr/v1/vnfinfo":
+ "/api/resmgr/v1/vnfinfo":
[0, json.JSONEncoder().encode({}), '200'],
- "/openoapi/ztevmanagerdriver/v1/jobs/" + self.job_id + "&responseId=0":
+ "/api/ztevmanagerdriver/v1/jobs/" + self.job_id + "&responseId=0":
[0, json.JSONEncoder().encode({"jobid": self.job_id,
"responsedescriptor": {"progress": "100",
"status": JOB_MODEL_STATUS.FINISHED,
"terminationType": "forceful",
"gracefulTerminationTimeout": "600"}
- response = self.client.post("/openoapi/nslcm/v1/ns/vnfs/%s" % self.nf_inst_id, data=req_data)
+ response = self.client.post("/api/nslcm/v1/ns/vnfs/%s" % self.nf_inst_id, data=req_data)
self.failUnlessEqual(status.HTTP_201_CREATED, response.status_code)
@mock.patch.object(restcall, "call_req")
self.failUnlessEqual(1, 0)
mock_vals = {
- "/openoapi/ztevmanagerdriver/v1/1/vnfs/111/terminate":
+ "/api/ztevmanagerdriver/v1/1/vnfs/111/terminate":
[0, json.JSONEncoder().encode({"jobId": job_id}), '200'],
- "/openoapi/extsys/v1/vnfms/1":
+ "/api/extsys/v1/vnfms/1":
[0, json.JSONEncoder().encode({"name": 'vnfm1', "type": 'ztevmanagerdriver'}), '200'],
- "/openoapi/resmgr/v1/vnf/1":
+ "/api/resmgr/v1/vnf/1":
[0, json.JSONEncoder().encode({"jobId": job_id}), '200'],
- "/openoapi/ztevmanagerdriver/v1/1/jobs/" + job_id + "?responseId=0":
+ "/api/ztevmanagerdriver/v1/1/jobs/" + job_id + "?responseId=0":
[0, json.JSONEncoder().encode({"jobId": job_id,
"responsedescriptor": {"progress": "100",
"status": JOB_MODEL_STATUS.FINISHED,
mock_vals = {
- "/openoapi/ztevmanagerdriver/v1/1/vnfs/111/terminate":
+ "/api/ztevmanagerdriver/v1/1/vnfs/111/terminate":
[0, json.JSONEncoder().encode({"jobId": job_id}), '200'],
- "/openoapi/ztevmanagerdriver/v1/1/vnfs/111/terminate":
+ "/api/ztevmanagerdriver/v1/1/vnfs/111/terminate":
[0, json.JSONEncoder().encode({"jobId": job_id}), '200']
}
NFManualScaleService(self.nf_inst_id, req_data).run()
pass
def test_verify_vnfs(self):
- response = self.client.post("/openoapi/nslcm/v1/vnfonboarding", data=self.data)
+ response = self.client.post("/api/nslcm/v1/vnfonboarding", data=self.data)
self.failUnlessEqual(status.HTTP_202_ACCEPTED, response.status_code)
\ No newline at end of file
NSManualScaleView
urlpatterns = patterns('',
- url(r'^openoapi/nslcm/v1/ns$', CreateNSView.as_view()),
- url(r'^openoapi/nslcm/v1/swagger.json$', SwaggerJsonView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/instantiate$',
+ url(r'^api/nslcm/v1/ns$', CreateNSView.as_view()),
+ url(r'^api/nslcm/v1/swagger.json$', SwaggerJsonView.as_view()),
+ url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/instantiate$',
NSInstView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/terminate$',
+ url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/terminate$',
TerminateNSView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)$', NSDetailView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/postdeal$',
+ url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)$', NSDetailView.as_view()),
+ url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/postdeal$',
NSInstPostDealView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/scale$',
+ url(r'^api/nslcm/v1/ns/(?P<ns_instance_id>[0-9a-zA-Z_-]+)/scale$',
NSManualScaleView.as_view()),
)
"fileUri":file_url
}
req_param = json.JSONEncoder().encode(input_data)
- policy_engine_url = 'openoapi/polengine/v1/policyinfo'
+ policy_engine_url = 'api/polengine/v1/policyinfo'
ret = req_by_msb(policy_engine_url, "POST", req_param)
if ret[0] != 0:
logger.error("Failed to send ns policy req")
from lcm.ns.vls.views import VlView, VlDetailView
urlpatterns = patterns('',
- url(r'^openoapi/nslcm/v1/ns/vls$', VlView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/vls/(?P<vl_inst_id>[0-9a-zA-Z_-]+)$', VlDetailView.as_view()),
+ url(r'^api/nslcm/v1/ns/vls$', VlView.as_view()),
+ url(r'^api/nslcm/v1/ns/vls/(?P<vl_inst_id>[0-9a-zA-Z_-]+)$', VlDetailView.as_view()),
)
urlpatterns = format_suffix_patterns(urlpatterns)
from lcm.ns.vnfs.views import NfView, NfDetailView, NfGrant, LcmNotify, NfScaleView, NfVerifyView
urlpatterns = patterns('',
- url(r'^openoapi/nslcm/v1/ns/vnfs$', NfView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/vnfs/(?P<vnfinstid>[0-9a-zA-Z_-]+)$', NfDetailView.as_view()),
- url(r'^openoapi/nslcm/v1/ns/grantvnf$', NfGrant.as_view()),
- url(r'^openoapi/nslcm/v1/ns/(?P<vnfmid>[0-9a-zA-Z_-]+)'
+ url(r'^api/nslcm/v1/ns/vnfs$', NfView.as_view()),
+ url(r'^api/nslcm/v1/ns/vnfs/(?P<vnfinstid>[0-9a-zA-Z_-]+)$', NfDetailView.as_view()),
+ url(r'^api/nslcm/v1/ns/grantvnf$', NfGrant.as_view()),
+ url(r'^api/nslcm/v1/ns/(?P<vnfmid>[0-9a-zA-Z_-]+)'
r'/vnfs/(?P<vnfInstanceId>[0-9a-zA-Z_-]+)/Notify$',
LcmNotify.as_view()),
- url(r'^openoapi/nslcm/v1/ns/vnfs/(?P<vnfinstid>[0-9a-zA-Z_-]+)/scaling$', NfScaleView.as_view()),
- url(r'^openoapi/nslcm/v1/vnfonboarding$', NfVerifyView.as_view()),
+ url(r'^api/nslcm/v1/ns/vnfs/(?P<vnfinstid>[0-9a-zA-Z_-]+)/scaling$', NfScaleView.as_view()),
+ url(r'^api/nslcm/v1/vnfonboarding$', NfVerifyView.as_view()),
)
urlpatterns = format_suffix_patterns(urlpatterns)
"csarId":self.data["PackageID"],
"labVimId":ignore_case_get(self.verify_config, "labVimId")
}
- ret = req_by_msb("/openoapi/nslcm/v1/vnfpackage", "POST", json.JSONEncoder().encode(onboarding_data))
+ ret = req_by_msb("/api/nslcm/v1/vnfpackage", "POST", json.JSONEncoder().encode(onboarding_data))
if ret[0] != 0:
raise NSLCMException("Failed to call vnf onboarding: %s" % ret[1])
rsp_data = json.JSONDecoder().decode(ret[1])
"additionalParamForVnf": vnf_param,
"vnfIndex": "1"
}
- ret = req_by_msb("/openoapi/nslcm/v1/ns/vnfs", "POST", json.JSONEncoder().encode(inst_data))
+ ret = req_by_msb("/api/nslcm/v1/ns/vnfs", "POST", json.JSONEncoder().encode(inst_data))
if ret[0] != 0:
raise NSLCMException("Failed to call inst vnf: %s" % ret[1])
rsp_data = json.JSONDecoder().decode(ret[1])
"terminationType": "forceful",
"gracefulTerminationTimeout": "600"
}
- ret = req_by_msb("/openoapi/nslcm/v1/ns/vnfs/%s" % self.vnf_inst_id, "POST", json.JSONEncoder().encode(term_data))
+ ret = req_by_msb("/api/nslcm/v1/ns/vnfs/%s" % self.vnf_inst_id, "POST", json.JSONEncoder().encode(term_data))
if ret[0] != 0:
raise NSLCMException("Failed to call term vnf: %s" % ret[1])
rsp_data = json.JSONDecoder().decode(ret[1])
while count < retry_count:
count = count + 1
time.sleep(interval_second)
- ret = req_by_msb("/openoapi/nslcm/v1/jobs/%s?responseId=%s" % (job_id, response_id), "GET")
+ ret = req_by_msb("/api/nslcm/v1/jobs/%s?responseId=%s" % (job_id, response_id), "GET")
if ret[0] != 0:
logger.error("Failed to query job: %s:%s", ret[2], ret[1])
continue
@mock.patch.object(NfOnBoardingThread, 'run')
def test_nf_pkg_on_boarding_normal(self, mock_run):
- resp = self.client.post("/openoapi/nslcm/v1/vnfpackage", {
+ resp = self.client.post("/api/nslcm/v1/vnfpackage", {
"csarId": "1",
"vimIds": ["1"]
}, format='json')
@mock.patch.object(restcall, 'call_req')
def test_nf_on_boarding_when_nfd_already_exists(self, mock_call_req):
mock_vals = {
- "/openoapi/catalog/v1/csars/2":
+ "/api/catalog/v1/csars/2":
[0, json.JSONEncoder().encode({
"onBoardState": "onBoardFailed", "processState": "deleteFailed"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.vnfd_raw_data), '200']}
def side_effect(*args):
mock__init__, mock_download_file_from_http, mock_call_req):
mock_download_file_from_http.return_value = True, "/root/package"
mock_vals = {
- "/openoapi/catalog/v1/csars/2":
+ "/api/catalog/v1/csars/2":
[0, json.JSONEncoder().encode({
"onBoardState": "onBoardFailed", "processState": "deleteFailed"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.vnfd_raw_data), '200'],
- "/openoapi/catalog/v1/csars/2/files?relativePath=/SoftwareImages/image-lb":
+ "/api/catalog/v1/csars/2/files?relativePath=/SoftwareImages/image-lb":
[0, json.JSONEncoder().encode({
"csar_file_info": [{"downloadUri": "8"}, {"localPath": "9"}]}), '200'],
- "/openoapi/extsys/v1/vims":
+ "/api/extsys/v1/vims":
[0, json.JSONEncoder().encode([{
"vimId": "1", "type": VIM_OPENSTACK,
"url": "/root/package", "userName": "tom",
"password": "tom", "tenant": "10"}]), '200'],
- "/openoapi/catalog/v1/csars/2?onBoardState=onBoarded": [0, '{}', 200],
- "/openoapi/catalog/v1/csars/2?operationalState=Enabled": [0, '{}', 200],
- "/openoapi/catalog/v1/csars/2?processState=normal": [0, '{}', 200]}
+ "/api/catalog/v1/csars/2?onBoardState=onBoarded": [0, '{}', 200],
+ "/api/catalog/v1/csars/2?operationalState=Enabled": [0, '{}', 200],
+ "/api/catalog/v1/csars/2?processState=normal": [0, '{}', 200]}
mock_create_image.return_value = [0, {"id": "30", "name": "jerry", "res_type": 0}]
mock__init__.return_value = None
mock_get_image.return_value = [0, {"id": "30", "name": "jerry", "size": "60", "status": "active"}]
nf_package.SLEEP_INTERVAL_SECONDS = 1
mock_download_file_from_http.return_value = True, "/root/package"
mock_vals = {
- "/openoapi/catalog/v1/csars/3":
+ "/api/catalog/v1/csars/3":
[0, json.JSONEncoder().encode({"onBoardState": "onBoardFailed",
"processState": "deleteFailed"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.vnfd_raw_data), '200'],
- "/openoapi/catalog/v1/csars/3/files?relativePath=/SoftwareImages/image-lb":
+ "/api/catalog/v1/csars/3/files?relativePath=/SoftwareImages/image-lb":
[0, json.JSONEncoder().encode({
"csar_file_info": [{"downloadUri": "8"}, {"localPath": "9"}]}), '200'],
- "/openoapi/catalog/v1/csars/3?processState=onBoardFailed": [0, '{}', 200],
- "/openoapi/extsys/v1/vims":
+ "/api/catalog/v1/csars/3?processState=onBoardFailed": [0, '{}', 200],
+ "/api/extsys/v1/vims":
[0, json.JSONEncoder().encode([{
"vimId": "1", "type": VIM_OPENSTACK,
"url": "/root/package", "userName": "tom",
mock__init__, mock_download_file_from_http, mock_call_req):
mock_download_file_from_http.return_value = True, "/root/package"
mock_vals = {
- "/openoapi/catalog/v1/csars/5":
+ "/api/catalog/v1/csars/5":
[0, json.JSONEncoder().encode({
"onBoardState": "onBoardFailed", "processState": "deleteFailed"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.vnfd_raw_data), '200'],
- "/openoapi/catalog/v1/csars/5/files?relativePath=/SoftwareImages/image-lb":
+ "/api/catalog/v1/csars/5/files?relativePath=/SoftwareImages/image-lb":
[0, json.JSONEncoder().encode({
"csar_file_info": [{"downloadUri": "8"}, {"localPath": "9"}]}), '200'],
- "/openoapi/catalog/v1/csars/5?processState=onBoardFailed": [0, '{}', 200],
- "/openoapi/extsys/v1/vims":
+ "/api/catalog/v1/csars/5?processState=onBoardFailed": [0, '{}', 200],
+ "/api/extsys/v1/vims":
[0, json.JSONEncoder().encode([{
"vimId": "1", "type": VIM_OPENSTACK,
"url": "/root/package", "userName": "tom",
VnfPackageFileModel(id="1", filename="filename", imageid="00001",
vimid="1", vimuser="001", tenant="12", status="1", vnfpid="13").save()
NfInstModel(nfinstid="1", mnfinstid="001", nf_name="name", package_id="13").save()
- resp = self.client.get("/openoapi/nslcm/v1/vnfpackage/13")
+ resp = self.client.get("/api/nslcm/v1/vnfpackage/13")
self.assertEqual(resp.status_code, status.HTTP_200_OK)
expect_data = {
"csarId": '13',
@mock.patch.object(restcall, 'call_req')
def test_delete_csarr_when_exception(self, mock_call_req, mock_delete_image, mock_init_):
mock_vals = {
- ("/openoapi/catalog/v1/csars/1", "DELETE"):
+ ("/api/catalog/v1/csars/1", "DELETE"):
[1, "{}", "400"],
- ("/openoapi/catalog/v1/csars/1?processState=deleting", "PUT"):
+ ("/api/catalog/v1/csars/1?processState=deleting", "PUT"):
[0, "{}", "200"],
- ("/openoapi/catalog/v1/csars/1?processState=deleteFailed", "PUT"):
+ ("/api/catalog/v1/csars/1?processState=deleteFailed", "PUT"):
[0, "{}", "200"],
- ("/openoapi/catalog/v1/csars/1", "GET"):
+ ("/api/catalog/v1/csars/1", "GET"):
[0, json.JSONEncoder().encode({"processState": "normal"}), "200"],
- ("/openoapi/extsys/v1/vims", "GET"):
+ ("/api/extsys/v1/vims", "GET"):
[0, json.JSONEncoder().encode([{"vimId": "002",
"url": "url_test",
"userName": "test01",
@mock.patch.object(restcall, 'call_req')
def test_delete_csar_when_successfully(self, mock_call_req, mock_delete_image, mock_init_):
mock_vals = {
- ("/openoapi/catalog/v1/csars/1", "DELETE"):
+ ("/api/catalog/v1/csars/1", "DELETE"):
[0, json.JSONEncoder().encode({"successfully": "successfully"}), "200"],
- ("/openoapi/catalog/v1/csars/1?processState=deleting", "PUT"):
+ ("/api/catalog/v1/csars/1?processState=deleting", "PUT"):
[0, json.JSONEncoder().encode({"successfully": "successfully"}), "200"],
- ("/openoapi/catalog/v1/csars/1?processState=deleteFailed", "PUT"):
+ ("/api/catalog/v1/csars/1?processState=deleteFailed", "PUT"):
[0, json.JSONEncoder().encode({"successfully": "successfully"}), "200"],
- ("/openoapi/catalog/v1/csars/1", "GET"):
+ ("/api/catalog/v1/csars/1", "GET"):
[0, json.JSONEncoder().encode({"notProcessState": "notProcessState"}), "200"],
- ("/openoapi/extsys/v1/vims", "GET"):
+ ("/api/extsys/v1/vims", "GET"):
[0, json.JSONEncoder().encode([{
"vimId": "002",
"url": "url_test",
def test_get_nf_csars_normal(self):
NfPackageModel(uuid="01", nfpackageid="1", vnfdid="2").save()
- resp = self.client.get("/openoapi/nslcm/v1/vnfpackage")
+ resp = self.client.get("/api/nslcm/v1/vnfpackage")
self.assertEqual(resp.status_code, status.HTTP_200_OK)
self.assertEqual(1, len(resp.data["csars"]))
self.assertEqual("1", resp.data["csars"][0]["csarId"])
@mock.patch.object(restcall, 'call_req')
def test_ns_pkg_on_boarding_when_on_boarded(self, mock_call_req):
mock_call_req.return_value = [0, json.JSONEncoder().encode({"onBoardState": "onBoarded"}), '200']
- resp = self.client.post("/openoapi/nslcm/v1/nspackage", {"csarId": "1"}, format='json')
+ resp = self.client.post("/api/nslcm/v1/nspackage", {"csarId": "1"}, format='json')
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(1) already onBoarded.", resp.data["statusDescription"])
def test_ns_pkg_on_boarding_when_nsd_already_exists(self, mock_call_req):
self.set_nsd_metadata(key="id", val="2")
mock_vals = {
- "/openoapi/catalog/v1/csars/2":
+ "/api/catalog/v1/csars/2":
[0, json.JSONEncoder().encode({"onBoardState": "non-onBoarded"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.nsd_raw_data), '200']}
def side_effect(*args):
mock_call_req.side_effect = side_effect
NSDModel(id="1", nsd_id="2").save()
- resp = self.client.post("/openoapi/nslcm/v1/nspackage", {"csarId": "2"}, format='json')
+ resp = self.client.post("/api/nslcm/v1/nspackage", {"csarId": "2"}, format='json')
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("NSD(2) already exists.", resp.data["statusDescription"])
self.set_nsd_metadata(key="id", val="2")
self.set_nsd_vnf_id(val="3")
mock_vals = {
- "/openoapi/catalog/v1/csars/3":
+ "/api/catalog/v1/csars/3":
[0, json.JSONEncoder().encode({"onBoardState": "non-onBoarded"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.nsd_raw_data), '200']}
def side_effect(*args):
return mock_vals[args[4]]
mock_call_req.side_effect = side_effect
- resp = self.client.post("/openoapi/nslcm/v1/nspackage", {"csarId": "3"}, format='json')
+ resp = self.client.post("/api/nslcm/v1/nspackage", {"csarId": "3"}, format='json')
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("VNF package(3) is not onBoarded.", resp.data["statusDescription"])
self.set_nsd_metadata(key="id", val="2")
self.set_nsd_vnf_id(val="6")
mock_vals = {
- "/openoapi/catalog/v1/csars/4":
+ "/api/catalog/v1/csars/4":
[0, json.JSONEncoder().encode({"onBoardState": "non-onBoarded"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.nsd_raw_data), '200'],
- "/openoapi/catalog/v1/csars/5":
+ "/api/catalog/v1/csars/5":
[0, json.JSONEncoder().encode({"onBoardState": "non-onBoarded"}), '200'], }
def side_effect(*args):
mock_call_req.side_effect = side_effect
NfPackageModel(uuid="1", nfpackageid="5", vnfdid="6").save()
- resp = self.client.post("/openoapi/nslcm/v1/nspackage", {"csarId": "4"}, format='json')
+ resp = self.client.post("/api/nslcm/v1/nspackage", {"csarId": "4"}, format='json')
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("VNF package(5) is not onBoarded on catalog.", resp.data["statusDescription"])
self.set_nsd_metadata(key="version", val="6")
self.set_nsd_vnf_id(val="7")
mock_vals = {
- "/openoapi/catalog/v1/csars/5":
+ "/api/catalog/v1/csars/5":
[0, json.JSONEncoder().encode({
"onBoardState": "non-onBoarded",
"createTime": "2016-05-15 12:30:34",
"modifyTime": "2016-05-15 12:30:34"}), '200'],
- "/openoapi/catalog/v1/servicetemplates/queryingrawdata":
+ "/api/catalog/v1/servicetemplates/queryingrawdata":
[0, json.JSONEncoder().encode(self.nsd_raw_data), '200'],
- "/openoapi/catalog/v1/csars/6":
+ "/api/catalog/v1/csars/6":
[0, json.JSONEncoder().encode({"onBoardState": "onBoarded"}), '200'],
- "/openoapi/catalog/v1/csars/5?operationalState=Enabled": [0, '{}', 200],
- "/openoapi/catalog/v1/csars/5?onBoardState=onBoarded": [0, "OK", '200']}
+ "/api/catalog/v1/csars/5?operationalState=Enabled": [0, '{}', 200],
+ "/api/catalog/v1/csars/5?onBoardState=onBoarded": [0, "OK", '200']}
def side_effect(*args):
return mock_vals[args[4]]
mock_call_req.side_effect = side_effect
NfPackageModel(uuid="1", nfpackageid="6", vnfdid="7").save()
- resp = self.client.post("/openoapi/nslcm/v1/nspackage", {"csarId": "5"}, format='json')
+ resp = self.client.post("/api/nslcm/v1/nspackage", {"csarId": "5"}, format='json')
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("CSAR(5) onBoarded successfully.", resp.data["statusDescription"])
@mock.patch.object(restcall, 'call_req')
def test_delete_csar_when_id_not_exist(self, mock_call_req):
mock_call_req.return_value = [0, "", '204']
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/6")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/6")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Delete CSAR(6) successfully.", resp.data["statusDescription"])
NSDModel(id="7", nsd_id="2").save()
NSInstModel(id="1", nspackage_id="7").save()
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/7")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/7")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Set deletionPending to True of CSAR(7) successfully.",
NSDModel(id="8", nsd_id="2").save()
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/8")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/8")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Delete CSAR(8) successfully.", resp.data["statusDescription"])
###############################################################################################################
def test_delete_pending_csar_when_id_not_exist(self):
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/9/deletionpending")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/9/deletionpending")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Delete pending CSAR(9) successfully.", resp.data["statusDescription"])
def test_delete_pending_csar_when_pending_is_false(self, mock_call_req):
mock_call_req.return_value = [0, '{"deletionPending": "false"}', '200']
NSDModel(id="10", nsd_id="2").save()
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/10/deletionpending")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/10/deletionpending")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(10) need not to be deleted.", resp.data["statusDescription"])
mock_call_req.return_value = [0, '{"deletionPending": "true"}', '200']
NSDModel(id="11", nsd_id="2").save()
NSInstModel(id="1", nspackage_id="11").save()
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/11/deletionpending")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/11/deletionpending")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(11) is in using, cannot be deleted.", resp.data["statusDescription"])
[0, '{"deletionPending": "true"}', '200'],
[0, "OK", '204']]
NSDModel(id="12", nsd_id="2").save()
- resp = self.client.delete("/openoapi/nslcm/v1/nspackage/12/deletionpending")
+ resp = self.client.delete("/api/nslcm/v1/nspackage/12/deletionpending")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Delete CSAR(12) successfully.", resp.data["statusDescription"])
NSInstModel(id="1", nspackage_id="13", name="11").save()
NSInstModel(id="2", nspackage_id="13", name="22").save()
- resp = self.client.get("/openoapi/nslcm/v1/nspackage/13")
+ resp = self.client.get("/api/nslcm/v1/nspackage/13")
self.assertEqual(resp.status_code, status.HTTP_200_OK)
expect_data = {"nsInstanceInfo": [{"nsInstanceId": "1", "nsInstanceName": "11"},
{"nsInstanceId": "2", "nsInstanceName": "22"}], "csarId": "13",
###############################################################################################################
def test_disable_csar_when_id_not_exist_table(self):
- resp = self.client.put("/openoapi/nslcm/v1/nspackage/14/disabled")
+ resp = self.client.put("/api/nslcm/v1/nspackage/14/disabled")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(14) does not exist.", resp.data["statusDescription"])
def test_disable_csar_when_csar_is_disabled(self, mock_call_req):
NSDModel(id="15", nsd_id="2").save()
mock_call_req.return_value = [0, json.JSONEncoder().encode({"operationalState": "Disabled"}), '200']
- resp = self.client.put("/openoapi/nslcm/v1/nspackage/15/disabled")
+ resp = self.client.put("/api/nslcm/v1/nspackage/15/disabled")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(15) already disabled.", resp.data["statusDescription"])
def test_disable_csar_successfully(self, mock_call_req):
NSDModel(id="16", nsd_id="2").save()
mock_vals = {
- "/openoapi/catalog/v1/csars/16":
+ "/api/catalog/v1/csars/16":
[0, json.JSONEncoder().encode({"operationalState": "Enabled"}), '200'],
- "/openoapi/catalog/v1/csars/16?operationState=Disabled":
+ "/api/catalog/v1/csars/16?operationState=Disabled":
[0, "OK", '200']}
def side_effect(*args):
return mock_vals[args[4]]
mock_call_req.side_effect = side_effect
- resp = self.client.put("/openoapi/nslcm/v1/nspackage/16/disabled")
+ resp = self.client.put("/api/nslcm/v1/nspackage/16/disabled")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Set operationState to Disabled of CSAR(16) successfully.", resp.data["statusDescription"])
###############################################################################################################
def test_enable_csar_when_id_not_exist_table(self):
- resp = self.client.put("/openoapi/nslcm/v1/nspackage/17/enabled")
+ resp = self.client.put("/api/nslcm/v1/nspackage/17/enabled")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(17) does not exist.", resp.data["statusDescription"])
def test_enable_csar_when_csar_is_enabled(self, mock_call_req):
NSDModel(id="18", nsd_id="2").save()
mock_call_req.return_value = [0, json.JSONEncoder().encode({"operationalState": "Enabled"}), '200']
- resp = self.client.put("/openoapi/nslcm/v1/nspackage/18/enabled")
+ resp = self.client.put("/api/nslcm/v1/nspackage/18/enabled")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("failed", resp.data["status"])
self.assertEqual("CSAR(18) already enabled.", resp.data["statusDescription"])
def test_enable_csar_successfully(self, mock_call_req):
NSDModel(id="19", nsd_id="2").save()
mock_vals = {
- "/openoapi/catalog/v1/csars/19":
+ "/api/catalog/v1/csars/19":
[0, json.JSONEncoder().encode({"operationalState": "Disabled"}), '200'],
- "/openoapi/catalog/v1/csars/19?operationState=Enabled":
+ "/api/catalog/v1/csars/19?operationState=Enabled":
[0, "OK", '200']}
def side_effect(*args):
return mock_vals[args[4]]
mock_call_req.side_effect = side_effect
- resp = self.client.put("/openoapi/nslcm/v1/nspackage/19/enabled")
+ resp = self.client.put("/api/nslcm/v1/nspackage/19/enabled")
self.assertEqual(resp.status_code, status.HTTP_202_ACCEPTED)
self.assertEqual("success", resp.data["status"])
self.assertEqual("Set operationState to Enabled of CSAR(19) successfully.", resp.data["statusDescription"])
\ No newline at end of file
from lcm.packages import views
urlpatterns = [
- url(r'^openoapi/nslcm/v1/nspackage/(?P<csarId>[0-9a-zA-Z\-\_]+)$', views.ns_access_csar, name='ns_access_csar'),
- url(r'^openoapi/nslcm/v1/nspackage$', views.ns_on_boarding, name='ns_on_boarding'),
- url(r'^openoapi/nslcm/v1/nspackage/(?P<csarId>[0-9a-zA-Z\-\_]+)/deletionpending$',
+ url(r'^api/nslcm/v1/nspackage/(?P<csarId>[0-9a-zA-Z\-\_]+)$', views.ns_access_csar, name='ns_access_csar'),
+ url(r'^api/nslcm/v1/nspackage$', views.ns_on_boarding, name='ns_on_boarding'),
+ url(r'^api/nslcm/v1/nspackage/(?P<csarId>[0-9a-zA-Z\-\_]+)/deletionpending$',
views.ns_delete_pending_csar, name='ns_delete_pending_csar'),
- url(r'^openoapi/nslcm/v1/nspackage/(?P<csarId>[0-9a-zA-Z\-\_]+)/(?P<operation>(disabled|enabled))$',
+ url(r'^api/nslcm/v1/nspackage/(?P<csarId>[0-9a-zA-Z\-\_]+)/(?P<operation>(disabled|enabled))$',
views.ns_set_state_csar, name='ns_set_state_csar'),
- url(r'^openoapi/nslcm/v1/vnfpackage/(?P<csarId>[0-9a-zA-Z\-\_]+)$', views.nf_access_csar, name='nf_access_csar'),
- url(r'^openoapi/nslcm/v1/vnfpackage$', views.nf_on_boarding, name='nf_on_boarding'),
- url(r'^openoapi/nslcm/v1/vnfpackage/(?P<csarId>[0-9a-zA-Z\-\_]+)/deletionpending$',
+ url(r'^api/nslcm/v1/vnfpackage/(?P<csarId>[0-9a-zA-Z\-\_]+)$', views.nf_access_csar, name='nf_access_csar'),
+ url(r'^api/nslcm/v1/vnfpackage$', views.nf_on_boarding, name='nf_on_boarding'),
+ url(r'^api/nslcm/v1/vnfpackage/(?P<csarId>[0-9a-zA-Z\-\_]+)/deletionpending$',
views.nf_delete_pending_csar, name='nf_delete_pending_csar'), ]
urlpatterns = format_suffix_patterns(urlpatterns)
# [register]
REG_TO_MSB_WHEN_START = True
-REG_TO_MSB_REG_URL = "/openoapi/microservices/v1/services"
+REG_TO_MSB_REG_URL = "/api/microservices/v1/services"
REG_TO_MSB_REG_PARAM = {
"serviceName": "nslcm",
"version": "v1",
- "url": "/openoapi/nslcm/v1",
+ "url": "/api/nslcm/v1",
"protocol": "REST",
"visualRange": "1",
"nodes": [{
description = models.CharField(db_column='DESCRIPTION', max_length=200, null=True, blank=True)
version = models.CharField(db_column='VERSION', max_length=200, null=True, blank=True)
nsd_model = models.TextField(db_column='NSDMODEL', max_length=65535, null=True, blank=True)
+ nsd_path = models.CharField(db_column='NSDPATH', max_length=300, null=True, blank=True)
class NSInstModel(models.Model):
vnfdversion = models.CharField(db_column='VNFDVERSION', max_length=255)
vnfversion = models.CharField(db_column='VNFVERSION', max_length=255)
vnfdmodel = models.TextField(db_column='VNFDMODEL', max_length=65535, blank=True, null=True)
+ vnfd_path = models.CharField(db_column='VNFDPATH', max_length=300, null=True, blank=True)
class Meta:
db_table = 'NFVO_NFPACKAGE'
def query_csar_from_catalog(csar_id, key=''):
- ret = req_by_msb("/openoapi/catalog/v1/csars/%s" % csar_id, "GET")
+ ret = req_by_msb("/api/catalog/v1/csars/%s" % csar_id, "GET")
if ret[0] != 0:
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
if ret[2] == '404':
def query_rawdata_from_catalog(csar_id, input_parameters=[]):
req_param = json.JSONEncoder().encode({"csarId": csar_id, "inputParameters": input_parameters})
- ret = req_by_msb("/openoapi/catalog/v1/servicetemplates/queryingrawdata", "POST", req_param)
+ ret = req_by_msb("/api/catalog/v1/servicetemplates/queryingrawdata", "POST", req_param)
if ret[0] != 0:
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
raise NSLCMException("Failed to query rawdata of CSAR(%s) from catalog." % csar_id)
def set_csar_state(csar_id, prop, val):
- ret = req_by_msb("/openoapi/catalog/v1/csars/%s?%s=%s" % (csar_id, prop, val), "PUT")
+ ret = req_by_msb("/api/catalog/v1/csars/%s?%s=%s" % (csar_id, prop, val), "PUT")
if ret[0] != 0:
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
return [1, "Failed to set %s to %s of CSAR(%s)." % (prop, val, csar_id)]
def delete_csar_from_catalog(csar_id):
- ret = req_by_msb("/openoapi/catalog/v1/csars/%s" % csar_id, "DELETE")
+ ret = req_by_msb("/api/catalog/v1/csars/%s" % csar_id, "DELETE")
if ret[0] != 0 and ret[2] != '404':
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
set_csar_state(csar_id, "processState", P_STATUS_DELETEFAILED)
def get_download_url_from_catalog(csar_id, relative_path):
- ret = req_by_msb("/openoapi/catalog/v1/csars/%s/files?relativePath=%s" % (csar_id, relative_path), "GET")
+ ret = req_by_msb("/api/catalog/v1/csars/%s/files?relativePath=%s" % (csar_id, relative_path), "GET")
if ret[0] != 0:
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
raise NSLCMException("Failed to get download url of CSAR(%s)." % csar_id)
def get_process_id(name, srv_template_id):
- ret = req_by_msb('/openoapi/catalog/v1/servicetemplates/%s/operations' % srv_template_id, 'GET')
+ ret = req_by_msb('/api/catalog/v1/servicetemplates/%s/operations' % srv_template_id, 'GET')
if ret[0] != 0:
raise NSLCMException('Failed to get service[%s,%s] process id' % (name, srv_template_id))
items = json.JSONDecoder().decode(ret[1])
raise NSLCMException('service[%s,%s] process id not exist' % (name, srv_template_id))
def get_servicetemplate_id(nsd_id):
- ret = req_by_msb('/openoapi/catalog/v1/servicetemplates', 'GET')
+ ret = req_by_msb('/api/catalog/v1/servicetemplates', 'GET')
if ret[0] != 0:
raise NSLCMException('Failed to get servicetemplates info')
stpls = json.JSONDecoder().decode(ret[1])
raise NSLCMException('servicetemplate(%s) does not exist.' % nsd_id)
def get_servicetemplate(nsd_id):
- ret = req_by_msb('/openoapi/catalog/v1/servicetemplates', 'GET')
+ ret = req_by_msb('/api/catalog/v1/servicetemplates', 'GET')
if ret[0] != 0:
raise NSLCMException('Failed to get servicetemplates info')
stpls = json.JSONDecoder().decode(ret[1])
def get_vims():
- ret = req_by_msb("/openoapi/extsys/v1/vims", "GET")
+ ret = req_by_msb("/api/extsys/v1/vims", "GET")
if ret[0] != 0:
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
raise NSLCMException("Failed to query vims from extsys.")
def get_vim_by_id(vim_id):
- ret = req_by_msb("/openoapi/extsys/v1/vims/%s" % vim_id, "GET")
+ ret = req_by_msb("/api/extsys/v1/vims/%s" % vim_id, "GET")
if ret[0] != 0:
logger.error("Status code is %s, detail is %s.", ret[2], ret[1])
raise NSLCMException("Failed to query vim(%s) from extsys." % vim_id)
def get_sdn_controller_by_id(sdn_ontroller_id):
- ret = req_by_msb("/openoapi/extsys/v1/sdncontrollers/%s" % sdn_ontroller_id, "GET")
+ ret = req_by_msb("/api/extsys/v1/sdncontrollers/%s" % sdn_ontroller_id, "GET")
if ret[0] != 0:
logger.error("Failed to query sdn ontroller(%s) from extsys. detail is %s.", sdn_ontroller_id, ret[1])
raise NSLCMException("Failed to query sdn ontroller(%s) from extsys." % sdn_ontroller_id)
def get_vnfm_by_id(vnfm_inst_id):
- uri = '/openoapi/extsys/v1/vnfms/%s' % vnfm_inst_id
+ uri = '/api/extsys/v1/vnfms/%s' % vnfm_inst_id
ret = req_by_msb(uri, "GET")
if ret[0] > 0:
logger.error('Send get VNFM information request to extsys failed.')
return json.JSONDecoder().decode(ret[1])
def select_vnfm(vnfm_type, vim_id):
- uri = '/openoapi/extsys/v1/vnfms'
+ uri = '/api/extsys/v1/vnfms'
ret = req_by_msb(uri, "GET")
if ret[0] > 0:
logger.error("Failed to call %s: %s", uri, ret[1])
def call_from_ns_cancel_resource(res_type, instid):
method = "DELETE"
if res_type == 'vl':
- uri = '/openoapi/nslcm/v1/ns/vls/%s' % instid
+ uri = '/api/nslcm/v1/ns/vls/%s' % instid
elif res_type == 'sfc':
- uri = '/openoapi/nslcm/v1/ns/sfcs/%s' % instid
+ uri = '/api/nslcm/v1/ns/sfcs/%s' % instid
else:
# vnf
method = "POST"
- uri = '/openoapi/nslcm/v1/ns/vnfs/%s' % instid
+ uri = '/api/nslcm/v1/ns/vnfs/%s' % instid
req_param = {}
ret = req_by_msb(uri, method, json.dumps(req_param))
logger.info("[NS terminate] call vnfm [%s] result:%s" % (res_type, ret))
def create_vl(req_param):
- ret = req_by_msb("/openoapi/resmgr/v1/vl", "POST", json.JSONEncoder().encode(req_param))
+ ret = req_by_msb("/api/resmgr/v1/vl", "POST", json.JSONEncoder().encode(req_param))
if ret[0] != 0:
logger.error("Failed to create vl to resmgr. detail is %s.", ret[1])
#raise NSLCMException('Failed to create vl to resmgr.')
def delete_vl(vl_inst_id):
- ret = req_by_msb("/openoapi/resmgr/v1/vl/%s" % vl_inst_id, "DELETE")
+ ret = req_by_msb("/api/resmgr/v1/vl/%s" % vl_inst_id, "DELETE")
if ret[0] != 0:
logger.error("Failed to delete vl(%s) to resmgr. detail is %s.", vl_inst_id, ret[1])
#raise NSLCMException("Failed to delete vl(%s) to resmgr." % vl_inst_id)
def delete_sfc(sfc_inst_id):
- ret = req_by_msb("/openoapi/resmgr/v1/sfc/%s" % sfc_inst_id, "DELETE")
+ ret = req_by_msb("/api/resmgr/v1/sfc/%s" % sfc_inst_id, "DELETE")
if ret[0] != 0:
logger.error("Failed to delete sfc(%s) to resmgr. detail is %s.", sfc_inst_id, ret[1])
#raise NSLCMException("Failed to delete sfc(%s) to resmgr." % sfc_inst_id)
def grant_vnf(req_param):
grant_data = json.JSONEncoder().encode(req_param)
- ret = req_by_msb("/openoapi/resmgr/v1/resource/grant", "PUT", grant_data)
+ ret = req_by_msb("/api/resmgr/v1/resource/grant", "PUT", grant_data)
if ret[0] != 0:
logger.error("Failed to grant vnf to resmgr. detail is %s.", ret[1])
#raise NSLCMException('Failed to grant vnf to resmgr.')
def create_vnf(data):
- uri = '/openoapi/resmgr/v1/vnf'
+ uri = '/api/resmgr/v1/vnf'
req_param = json.JSONEncoder().encode({
'orchVnfInstanceId': data['nf_inst_id'],
'vnfInstanceId': data['vnfm_nf_inst_id'],
def create_vnf_creation_info(data):
- uri = '/openoapi/resmgr/v1/vnfinfo'
+ uri = '/api/resmgr/v1/vnfinfo'
req_param = json.JSONEncoder().encode({
'vnfInstanceId': data['nf_inst_id'],
'nsId': data['ns_inst_id'],
def terminate_vnf(vnf_inst_id):
- uri = '/openoapi/resmgr/v1/vnf/%s' % vnf_inst_id
+ uri = '/api/resmgr/v1/vnf/%s' % vnf_inst_id
req_param = {}
ret = req_by_msb(uri, "DELETE", json.dumps(req_param))
if ret[0] > 0:
def delete_port_chain(req_param):
- url = "/openoapi/sdncdriver/v1/delchain"
+ url = "/api/sdncdriver/v1/delchain"
str = "delete port chain"
delete_func(req_param, url, str)
def delete_flow_classifier(req_param):
- url = "/openoapi/sdncdriver/v1/delclassifier"
+ url = "/api/sdncdriver/v1/delclassifier"
str = "delete flow classifier"
delete_func(req_param, url, str)
def delete_port_pair_group(req_param):
- url = "/openoapi/sdncdriver/v1/delportpairgroup"
+ url = "/api/sdncdriver/v1/delportpairgroup"
str = "delete port pair"
delete_func(req_param, url, str)
def delete_port_pair(req_param):
- url = "/openoapi/sdncdriver/v1/delportpair"
+ url = "/api/sdncdriver/v1/delportpair"
str = "delete port pair"
delete_func(req_param, url, str)
def create_flow_classfier(data):
- url = "/openoapi/ztesdncdriver/v1/createflowclassfier"
+ url = "/api/ztesdncdriver/v1/createflowclassfier"
str = "create flow classfier"
return create(data, url, str)
def create_port_pair(data):
- url = "/openoapi/ztesdncdriver/v1/createportpair"
+ url = "/api/ztesdncdriver/v1/createportpair"
str = "create port pair"
return create(data, url, str)
def create_port_pair_group(data):
- url = "/openoapi/ztesdncdriver/v1/createportpairgroup"
+ url = "/api/ztesdncdriver/v1/createportpairgroup"
str = "create port pair group"
return create(data, url, str)
def create_port_chain(data):
- url = "/openoapi/ztesdncdriver/v1/createportchain"
+ url = "/api/ztesdncdriver/v1/createportchain"
str = "create port chain"
return create(data, url, str)
"""
content = {"uri": uri, "inputs": inputs}
content_str = json.JSONEncoder().encode(content)
- ret = req_by_msb("/openoapi/tosca/v1/indirect/instance", "POST", content_str)
+ ret = req_by_msb("/api/tosca/v1/indirect/instance", "POST", content_str)
if ret[0] != 0:
raise NSLCMException("status code is %s, detail is %s.", ret[2], ret[1])
if ret[2] != '200':
def send_nf_init_request(vnfm_inst_id, req_param):
vnfm = get_vnfm_by_id(vnfm_inst_id)
- uri = '/openoapi/%s/v1/%s/vnfs' % (vnfm["type"], vnfm_inst_id)
+ uri = '/api/%s/v1/%s/vnfs' % (vnfm["type"], vnfm_inst_id)
ret = req_by_msb(uri, "POST", req_param)
if ret[0] != 0:
logger.error("Failed to send nf init req:%s,%s", ret[2], ret[1])
def send_nf_terminate_request(vnfm_inst_id, vnf_inst_id, req_param):
vnfm = get_vnfm_by_id(vnfm_inst_id)
- uri = '/openoapi/%s/v1/%s/vnfs/%s/terminate' % (vnfm["type"], vnfm_inst_id, vnf_inst_id)
+ uri = '/api/%s/v1/%s/vnfs/%s/terminate' % (vnfm["type"], vnfm_inst_id, vnf_inst_id)
ret = req_by_msb(uri, "POST", req_param)
if ret[0] > 0:
logger.error("Failed to send nf terminate req:%s,%s", ret[2], ret[1])
def query_vnfm_job(vnfm_inst_id, job_id, response_id=0):
vnfm = get_vnfm_by_id(vnfm_inst_id)
retry_time = 3
- uri = '/openoapi/%s/v1/%s/jobs/%s?responseId=%s' % (vnfm["type"],
+ uri = '/api/%s/v1/%s/jobs/%s?responseId=%s' % (vnfm["type"],
vnfm_inst_id, job_id, response_id)
while retry_time > 0:
rsp = req_by_msb(uri, "GET")
def send_nf_scaling_request(vnfm_inst_id, vnf_inst_id, req_param):
vnfm = get_vnfm_by_id(vnfm_inst_id)
- uri = '/openoapi/%s/v1/%s/vnfs/%s/scale' % (vnfm["type"], vnfm_inst_id, vnf_inst_id)
+ uri = '/api/%s/v1/%s/vnfs/%s/scale' % (vnfm["type"], vnfm_inst_id, vnf_inst_id)
ret = req_by_msb(uri, "POST", req_param)
if ret[0] > 0:
logger.error("Failed to send nf scale req:%s,%s", ret[2], ret[1])
def workflow_run(content):
content_str = json.JSONEncoder().encode(content)
- ret = req_by_msb("/openoapi/wso2bpel/v1/process/instance", "POST", content_str)
+ ret = req_by_msb("/api/wso2bpel/v1/process/instance", "POST", content_str)
if ret[0] != 0:
raise NSLCMException("Status code is %s, detail is %s.", ret[2], ret[1])
return json.JSONDecoder().decode(ret[1])
from lcm.samples import views
urlpatterns = [
- url(r'^openoapi/nslcm/v1/mandb/(?P<modelName>[a-zA-Z\-]+)$', views.TablesList.as_view()),
+ url(r'^api/nslcm/v1/mandb/(?P<modelName>[a-zA-Z\-]+)$', views.TablesList.as_view()),
url(r'^samples/$', views.SampleList.as_view()), ]