diff options
| author | Ken Pepple <ken.pepple@gmail.com> | 2011-04-21 10:29:11 -0700 |
|---|---|---|
| committer | Ken Pepple <ken.pepple@gmail.com> | 2011-04-21 10:29:11 -0700 |
| commit | f205dcf659697adaae0d85a042ea2ea7ffe5c1c7 (patch) | |
| tree | b2da90f0cb240450bc30b9d6ebc3c703145b9bb6 /tools | |
| parent | dfcdafde2dc202aa3325cd1cea8d809f56fdde57 (diff) | |
| parent | c796920198305e101c75bcbf4e027ba9e81975d7 (diff) | |
| download | nova-f205dcf659697adaae0d85a042ea2ea7ffe5c1c7.tar.gz nova-f205dcf659697adaae0d85a042ea2ea7ffe5c1c7.tar.xz nova-f205dcf659697adaae0d85a042ea2ea7ffe5c1c7.zip | |
rebase trunk
Diffstat (limited to 'tools')
| -rw-r--r-- | tools/esx/guest_tool.py | 2 | ||||
| -rw-r--r-- | tools/eventlet-patch | 24 | ||||
| -rw-r--r-- | tools/install_venv.py | 6 | ||||
| -rw-r--r-- | tools/pip-requires | 1 |
4 files changed, 31 insertions, 2 deletions
diff --git a/tools/esx/guest_tool.py b/tools/esx/guest_tool.py index bbf3ea908..13b0f8d33 100644 --- a/tools/esx/guest_tool.py +++ b/tools/esx/guest_tool.py @@ -209,7 +209,7 @@ def _execute(cmd_list, process_input=None, check_exit_code=True): obj = subprocess.Popen(cmd, shell=True, stdin=subprocess.PIPE,
stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env)
result = None
- if process_input != None:
+ if process_input is not None:
result = obj.communicate(process_input)
else:
result = obj.communicate()
diff --git a/tools/eventlet-patch b/tools/eventlet-patch new file mode 100644 index 000000000..c87c5f279 --- /dev/null +++ b/tools/eventlet-patch @@ -0,0 +1,24 @@ +# HG changeset patch +# User Soren Hansen <soren@linux2go.dk> +# Date 1297678255 -3600 +# Node ID 4c846d555010bb5a91ab4da78dfe596451313742 +# Parent 5b7e9946c79f005c028eb63207cf5eb7bb21d1c3 +Don't attempt to wrap GreenPipes in GreenPipe + +If the os module is monkeypatched, Python's standard subprocess module +will return greenio.GreenPipe instances for Popen objects' stdin, stdout, +and stderr attributes. However, eventlet.green.subprocess tries to wrap +these attributes in another greenio.GreenPipe, which GreenPipe refuses. + +diff -r 5b7e9946c79f -r 4c846d555010 eventlet/green/subprocess.py +--- a/eventlet/green/subprocess.py Sat Feb 05 13:05:05 2011 -0800 ++++ b/eventlet/green/subprocess.py Mon Feb 14 11:10:55 2011 +0100 +@@ -27,7 +27,7 @@ + # eventlet.processes.Process.run() method. + for attr in "stdin", "stdout", "stderr": + pipe = getattr(self, attr) +- if pipe is not None: ++ if pipe is not None and not type(pipe) == greenio.GreenPipe: + wrapped_pipe = greenio.GreenPipe(pipe, pipe.mode, bufsize) + setattr(self, attr, wrapped_pipe) + __init__.__doc__ = subprocess_orig.Popen.__init__.__doc__ diff --git a/tools/install_venv.py b/tools/install_venv.py index 4e3941210..30ec85374 100644 --- a/tools/install_venv.py +++ b/tools/install_venv.py @@ -103,6 +103,12 @@ def install_dependencies(venv=VENV): pthfile = os.path.join(venv, "lib", "python2.6", "site-packages", "nova.pth") f = open(pthfile, 'w') f.write("%s\n" % ROOT) + # Patch eventlet (see FAQ # 1485) + patchsrc = os.path.join(ROOT, 'tools', 'eventlet-patch') + patchfile = os.path.join(venv, "lib", "python2.6", "site-packages", "eventlet", + "green", "subprocess.py") + patch_cmd = "patch %s %s" % (patchfile, patchsrc) + os.system(patch_cmd) def print_help(): diff --git a/tools/pip-requires b/tools/pip-requires index 6ea446493..2f4136732 100644 --- a/tools/pip-requires +++ b/tools/pip-requires @@ -17,7 +17,6 @@ redis==2.0.0 routes==1.12.3 WebOb==0.9.8 wsgiref==0.1.2 -zope.interface==3.6.1 mox==0.5.0 -f http://pymox.googlecode.com/files/mox-0.5.0.tar.gz greenlet==0.3.1 |
