diff options
author | SerenaFeng <feng.xiaowei@zte.com.cn> | 2016-06-08 11:46:56 +0800 |
---|---|---|
committer | SerenaFeng <feng.xiaowei@zte.com.cn> | 2016-06-08 11:46:56 +0800 |
commit | 6729a078e9a88be4555f58fb5883bada6414cd06 (patch) | |
tree | 9156ccfeb7f3ea86a316f3da520b64de4c54ca2a /result_collection_api | |
parent | 3906e03eb6b710515b35af6aa73eba6ea6faf5b6 (diff) |
add update opnfv-testapi script in testAPI
add file update_api.py
JIRA: FUNCTEST-299
Change-Id: Iea882a12bab2e3a92a31a3a8b59fcd57c488dffa
Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'result_collection_api')
-rw-r--r-- | result_collection_api/update/update_api.py | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/result_collection_api/update/update_api.py b/result_collection_api/update/update_api.py new file mode 100644 index 0000000..db8ad2d --- /dev/null +++ b/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() |