From: fujinhua Date: Fri, 18 Aug 2017 08:17:10 +0000 (+0800) Subject: Add activiti workflow logic X-Git-Tag: v1.0.0~167^2~2 X-Git-Url: https://gerrit.onap.org/r/gitweb?a=commitdiff_plain;h=e08e2328417672f30c5a27466e3b1191c30e7ff4;p=vfc%2Fnfvo%2Flcm.git Add activiti workflow logic Change-Id: I4cb4dfe6c32de60e84d38c2cf61e1059f914e967 Issue-Id: VFC-111 Signed-off-by: fujinhua --- diff --git a/lcm/pub/msapi/activiti.py b/lcm/pub/msapi/activiti.py new file mode 100644 index 00000000..69320d1c --- /dev/null +++ b/lcm/pub/msapi/activiti.py @@ -0,0 +1,78 @@ +# Copyright 2017 ZTE Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import json + +from lcm.pub.exceptions import NSLCMException +from lcm.pub.utils.restcall import req_by_msb + +""" +Input: +file:formdata +filename:formdata +================================= +Output: +{ + "status": "int", + "message": "string", + "deployedId": "string", + "processId": "string" +} +""" +def deploy_workflow(content): + content_str = json.JSONEncoder().encode(content) + ret = req_by_msb("/api/workflow/v1/package", "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]) + + +""" +Input: +None +================================= +Output: +{ + "status": "int", + "message": "string", +} +""" +def undeploy_workflow(deploy_id): + uri = "api/workflow/v1/package/{deployId}".format(deployId=deploy_id) + ret = req_by_msb(uri, "DELETE") + if ret[0] != 0: + raise NSLCMException("Status code is %s, detail is %s.", ret[2], ret[1]) + return json.JSONDecoder().decode(ret[1]) + + +""" +Input: +{ + "processId": "string", + "params": "Map" +} +================================= +Output: +{ + "status": "int", + "message": "string", +} +""" +def exec_workflow(content): + content_str = json.JSONEncoder().encode(content) + ret = req_by_msb("api/workflow/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]) + +