summaryrefslogtreecommitdiffstats
path: root/utils/test/result_collection_api/update/update_api.py
diff options
context:
space:
mode:
authorMorgan Richomme <morgan.richomme@orange.com>2016-06-08 06:45:10 +0000
committerGerrit Code Review <gerrit@172.30.200.206>2016-06-08 06:45:10 +0000
commitcf2a9cff0d29c611349f8e058017bf4600dc1f36 (patch)
tree4676591ff956f1cdc0215880a560d515463398a5 /utils/test/result_collection_api/update/update_api.py
parent8c7ab03d59920a7b4f28d927b3fb151290483fb3 (diff)
parent72be73c1f3b3dc873f3f0a4e2f3bc3c6f47ea032 (diff)
Merge "add update opnfv-testapi script in testAPI"
Diffstat (limited to 'utils/test/result_collection_api/update/update_api.py')
-rw-r--r--utils/test/result_collection_api/update/update_api.py55
1 files changed, 55 insertions, 0 deletions
diff --git a/utils/test/result_collection_api/update/update_api.py b/utils/test/result_collection_api/update/update_api.py
new file mode 100644
index 000000000..db8ad2d90
--- /dev/null
+++ b/utils/test/result_collection_api/update/update_api.py
@@ -0,0 +1,55 @@
+##############################################################################
+# Copyright (c) 2016 ZTE Corporation
+# feng.xiaowei@zte.com.cn
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+import subprocess
+
+possible_processes = [
+ 'result_collection_api',
+ 'opnfv-testapi'
+]
+
+
+def kill_olds():
+ for proc in possible_processes:
+ query = 'ps -ef | grep {} | grep -v grep'.format(proc)
+ runnings = execute_with_output(query)
+ if runnings:
+ for running in runnings:
+ kill = 'kill -kill ' + running.split()[1]
+ execute_with_output(kill)
+ runnings = execute_with_output(query)
+ assert len(runnings) == 0, 'kill %s failed'.format(proc)
+
+
+def install_dependencies():
+ execute_with_assert('pip install -r ../requirements.txt')
+
+
+def install_new():
+ execute_with_assert('cd ../ && python setup.py install')
+
+
+def run_new():
+ execute_with_assert('opnfv-testapi &')
+
+
+def execute_with_output(cmd):
+ return subprocess.Popen(cmd, shell=True,
+ stdout=subprocess.PIPE).stdout.readlines()
+
+
+def execute_with_assert(cmd):
+ execute_output = subprocess.call(cmd, shell=True)
+ assert execute_output == 0
+
+
+if __name__ == '__main__':
+ kill_olds()
+ install_dependencies()
+ install_new()
+ run_new()