From 2f35ade05f9910ef9bdaaa24de9593bd584073fa Mon Sep 17 00:00:00 2001 From: Rishabh Dave Date: Tue, 24 Jul 2018 07:59:55 +0000 Subject: [PATCH] qa/ceph-volume: allow executing python pyloads using python3 Signed-off-by: Rishabh Dave --- qa/tasks/cephfs/mount.py | 15 ++++++++------- qa/tasks/cephfs/test_volume_client.py | 5 ++++- qa/tasks/vstart_runner.py | 8 +++----- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/qa/tasks/cephfs/mount.py b/qa/tasks/cephfs/mount.py index 16b2149a819cc..bcc9aefd89543 100644 --- a/qa/tasks/cephfs/mount.py +++ b/qa/tasks/cephfs/mount.py @@ -144,13 +144,14 @@ class CephFSMount(object): 'sudo', 'rm', '-f', os.path.join(self.mountpoint, filename) ]) - def _run_python(self, pyscript): - return self.client_remote.run(args=[ - 'sudo', 'adjust-ulimits', 'daemon-helper', 'kill', 'python', '-c', pyscript - ], wait=False, stdin=run.PIPE, stdout=StringIO()) - - def run_python(self, pyscript): - p = self._run_python(pyscript) + def _run_python(self, pyscript, py_version='python'): + return self.client_remote.run( + args=['sudo', 'adjust-ulimits', 'daemon-helper', 'kill', + py_version, '-c', pyscript], wait=False, stdin=run.PIPE, + stdout=StringIO()) + + def run_python(self, pyscript, py_version='python'): + p = self._run_python(pyscript, py_version) p.wait() return p.stdout.getvalue().strip() diff --git a/qa/tasks/cephfs/test_volume_client.py b/qa/tasks/cephfs/test_volume_client.py index cf135bce12295..3203bac957237 100644 --- a/qa/tasks/cephfs/test_volume_client.py +++ b/qa/tasks/cephfs/test_volume_client.py @@ -14,6 +14,7 @@ class TestVolumeClient(CephFSTestCase): # One for looking at the global filesystem, one for being # the VolumeClient, two for mounting the created shares CLIENTS_REQUIRED = 4 + py_version = 'python' def _volume_client_python(self, client, script, vol_prefix=None, ns_prefix=None): # Can't dedent this *and* the script we pass in, because they might have different @@ -32,7 +33,9 @@ vc = CephFSVolumeClient("manila", "{conf_path}", "ceph", {vol_prefix}, {ns_prefi vc.connect() {payload} vc.disconnect() - """.format(payload=script, conf_path=client.config_path, vol_prefix=vol_prefix, ns_prefix=ns_prefix)) + """.format(payload=script, conf_path=client.config_path, + vol_prefix=vol_prefix, ns_prefix=ns_prefix), + self.py_version) def _sudo_write_file(self, remote, path, data): """ diff --git a/qa/tasks/vstart_runner.py b/qa/tasks/vstart_runner.py index cad41d42f29fd..1393e358e4ec1 100644 --- a/qa/tasks/vstart_runner.py +++ b/qa/tasks/vstart_runner.py @@ -540,15 +540,13 @@ class LocalFuseMount(FuseMount): self.gather_mount_info() - def _run_python(self, pyscript): + def _run_python(self, pyscript, py_version='python'): """ Override this to remove the daemon-helper prefix that is used otherwise to make the process killable. """ - return self.client_remote.run(args=[ - 'python', '-c', pyscript - ], wait=False) - + return self.client_remote.run(args=[py_version, '-c', pyscript], + wait=False) class LocalCephManager(CephManager): def __init__(self): -- 2.39.5