Project

General

Profile

Bug #4588

pushy local transport steps on command

Added by Anonymous almost 11 years ago. Updated almost 11 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
Development
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Task #3924 is blocked by the following behaviour of pushy's local transport. Need to find a work around.

Email describing problem:

The problem looks like the pushy local transport has hard coded in the connection setup replace the first word of the command string with the sys.executable. In normal operation this ensures that server uses the same python as the client. In the ceph-deploy scheme this ends up changing "sudo python …" into "$VIRTUALENV_PATH/python python" which of course doesn't work.

I don't know enough about python programming to know if there is a way to replace that bit of code in the pushy module with our own copy without the replacement. The relavant code snippet is pasted below.

Any ideas ?

Thanks,
Gary

From push/transport/local.py

class Popen(pushy.transport.BaseTransport):
def init(self, command, address, **kwargs):
pushy.transport.BaseTransport.__init__(self, address)

if not sys.platform.startswith("java"):
command[0] = sys.executable
self.__proc = subprocess.Popen(command, stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
bufsize=65535)
self.stdout = self.__proc.stdout
self.stderr = self.__proc.stderr
self.stdin = self.__proc.stdin

History

#1 Updated by Anonymous almost 11 years ago

  • Status changed from New to Resolved

Also available in: Atom PDF