]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph.in: execv using the same python 17713/head
authorKefu Chai <kchai@redhat.com>
Wed, 13 Sep 2017 06:20:48 +0000 (14:20 +0800)
committerKefu Chai <kchai@redhat.com>
Thu, 14 Sep 2017 03:33:48 +0000 (11:33 +0800)
otherwise we could be using another python when respawing the ceph cli.

Signed-off-by: Kefu Chai <kchai@redhat.com>
src/ceph.in

index c14c477e801a734f3cf34238ae1c8a75d5af681c..e96eca568202a540b5a49c6c59f6b356b5a42fad 100755 (executable)
@@ -65,28 +65,27 @@ DEVMODEMSG = '*** DEVELOPER MODE: setting PATH, PYTHONPATH and LD_LIBRARY_PATH *
 
 
 def respawn_in_path(lib_path, pybind_path, pythonlib_path):
-    execv_cmd = ['python']
+    execv_cmd = []
     if 'CEPH_DBG' in os.environ:
-        execv_cmd += ['-mpdb']
+        execv_cmd += ['@PYTHON_EXECUTABLE@', '-mpdb']
 
     if platform.system() == "Darwin":
         lib_path_var = "DYLD_LIBRARY_PATH"
     else:
         lib_path_var = "LD_LIBRARY_PATH"
 
-    py_binary = os.environ.get("PYTHON", "python")
-
+    execv_cmd += sys.argv
     if lib_path_var in os.environ:
         if lib_path not in os.environ[lib_path_var]:
             os.environ[lib_path_var] += ':' + lib_path
             if "CEPH_DEV" not in os.environ:
                 print(DEVMODEMSG, file=sys.stderr)
-            os.execvp(py_binary, execv_cmd + sys.argv)
+            os.execvp(execv_cmd[0], execv_cmd)
     else:
         os.environ[lib_path_var] = lib_path
         if "CEPH_DEV" not in os.environ:
             print(DEVMODEMSG, file=sys.stderr)
-        os.execvp(py_binary, execv_cmd + sys.argv)
+        os.execvp(execv_cmd[0], execv_cmd)
     sys.path.insert(0, os.path.join(MYDIR, pybind_path))
     sys.path.insert(0, os.path.join(MYDIR, pythonlib_path))