summaryrefslogtreecommitdiffstats
path: root/doctor_tests/installer/base.py
diff options
context:
space:
mode:
authordongwenjuan <dong.wenjuan@zte.com.cn>2018-08-08 17:18:41 +0800
committerdongwenjuan <dong.wenjuan@zte.com.cn>2018-08-09 14:02:51 +0800
commit7b73fe24ce63e36dea924164c98e0a15fd1d7684 (patch)
tree7f1a722c38347fb7c8fb52adb9e49a2babf8f317 /doctor_tests/installer/base.py
parent0f607cb5efd91ee497346b7f792dfa844d15595c (diff)
bugfix: kill the stunnel when cleanup
Popen.terminate() will kill the child process, but if you set the shell argument to True, this is the process ID of the spawned shell, so the stunnels are still exit.It will cause the failure of stunnel setup in the next test runtime. see: https://stackoverflow.com/questions/4789837/how-to-terminate-a-python-subprocess-launched-with-shell-true/4791612#4791612 Change-Id: I578611510f5bd1eb0dbd9a08ab408ccf101594f7 Signed-off-by: dongwenjuan <dong.wenjuan@zte.com.cn>
Diffstat (limited to 'doctor_tests/installer/base.py')
-rw-r--r--doctor_tests/installer/base.py5
1 files changed, 2 insertions, 3 deletions
diff --git a/doctor_tests/installer/base.py b/doctor_tests/installer/base.py
index f312130a..f37b7f1a 100644
--- a/doctor_tests/installer/base.py
+++ b/doctor_tests/installer/base.py
@@ -64,16 +64,15 @@ class BaseInstaller(object):
" -o StrictHostKeyChecking=no"
" -i %s %s@%s -R %s:localhost:%s"
" sleep 600 > ssh_tunnel.%s"
- " 2>&1 < /dev/null &"
+ " 2>&1 < /dev/null "
% (self.key_file,
self.node_user_name,
node_ip,
self.conf.consumer.port,
self.conf.consumer.port,
node_ip))
- server = subprocess.Popen(cmd, shell=True)
+ server = subprocess.Popen('exec ' + cmd, shell=True)
self.servers.append(server)
- server.communicate()
def _get_ssh_key(self, client, key_path):
self.log.info('Get SSH keys from %s installer......'