summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFu Jinhua <fu.jinhua@zte.com.cn>2017-08-18 08:18:08 +0000
committerGerrit Code Review <gerrit@onap.org>2017-08-18 08:18:08 +0000
commit9cb9da9e09c140b241512a164fcc4d99383e6aec (patch)
treeeffdb462145ee428584e998c257735edacb60b0a
parent063dec276037db0011d5b57f98d8a363c1c9ac0e (diff)
parente08e2328417672f30c5a27466e3b1191c30e7ff4 (diff)
Merge "Add activiti workflow logic"
-rw-r--r--lcm/pub/msapi/activiti.py78
1 files changed, 78 insertions, 0 deletions
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<String, String>"
+}
+=================================
+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])
+
+