Remove obsolete redhat-eventlet.patch
See I62ce43a330d7ae94eda4c7498782a655e63747fa for the gorey details on why this exists. As of this fix: https://github.com/eventlet/eventlet/pull/34 which was released in eventlet 0.13, we no longer need the patch. This has now been removed from oslo-incubator, so this is really just syncing that removal. Change-Id: I84267f3c6726cb2e750f615e107c48b12c6ed353
This commit is contained in:
parent
468cfe722e
commit
d513afe5d4
@ -1,16 +0,0 @@
|
|||||||
--- .nova-venv/lib/python2.6/site-packages/eventlet/green/subprocess.py.orig
|
|
||||||
2011-05-25
|
|
||||||
23:31:34.597271402 +0000
|
|
||||||
+++ .nova-venv/lib/python2.6/site-packages/eventlet/green/subprocess.py
|
|
||||||
2011-05-25
|
|
||||||
23:33:24.055602468 +0000
|
|
||||||
@@ -32,7 +32,7 @@
|
|
||||||
setattr(self, attr, wrapped_pipe)
|
|
||||||
__init__.__doc__ = subprocess_orig.Popen.__init__.__doc__
|
|
||||||
|
|
||||||
- def wait(self, check_interval=0.01):
|
|
||||||
+ def wait(self, check_interval=0.01, timeout=None):
|
|
||||||
# Instead of a blocking OS call, this version of wait() uses logic
|
|
||||||
# borrowed from the eventlet 0.2 processes.Process.wait() method.
|
|
||||||
try:
|
|
||||||
|
|
@ -16,11 +16,9 @@ module=log
|
|||||||
module=loopingcall
|
module=loopingcall
|
||||||
module=network_utils
|
module=network_utils
|
||||||
module=notifier
|
module=notifier
|
||||||
module=patch_tox_venv
|
|
||||||
module=periodic_task
|
module=periodic_task
|
||||||
module=policy
|
module=policy
|
||||||
module=processutils
|
module=processutils
|
||||||
module=redhat-eventlet.patch
|
|
||||||
module=rpc
|
module=rpc
|
||||||
module=service
|
module=service
|
||||||
module=rootwrap
|
module=rootwrap
|
||||||
|
@ -68,7 +68,6 @@ def main(argv):
|
|||||||
install.check_dependencies()
|
install.check_dependencies()
|
||||||
install.create_virtualenv(no_site_packages=options.no_site_packages)
|
install.create_virtualenv(no_site_packages=options.no_site_packages)
|
||||||
install.install_dependencies()
|
install.install_dependencies()
|
||||||
install.post_process()
|
|
||||||
print_help()
|
print_help()
|
||||||
|
|
||||||
|
|
||||||
|
@ -121,9 +121,6 @@ class InstallVenv(object):
|
|||||||
self.pip_install('-r', self.requirements)
|
self.pip_install('-r', self.requirements)
|
||||||
self.pip_install('-r', self.test_requirements)
|
self.pip_install('-r', self.test_requirements)
|
||||||
|
|
||||||
def post_process(self):
|
|
||||||
self.get_distro().post_process()
|
|
||||||
|
|
||||||
def parse_args(self, argv):
|
def parse_args(self, argv):
|
||||||
"""Parses command-line arguments."""
|
"""Parses command-line arguments."""
|
||||||
parser = optparse.OptionParser()
|
parser = optparse.OptionParser()
|
||||||
@ -156,14 +153,6 @@ class Distro(InstallVenv):
|
|||||||
' requires virtualenv, please install it using your'
|
' requires virtualenv, please install it using your'
|
||||||
' favorite package management tool' % self.project)
|
' favorite package management tool' % self.project)
|
||||||
|
|
||||||
def post_process(self):
|
|
||||||
"""Any distribution-specific post-processing gets done here.
|
|
||||||
|
|
||||||
In particular, this is useful for applying patches to code inside
|
|
||||||
the venv.
|
|
||||||
"""
|
|
||||||
pass
|
|
||||||
|
|
||||||
|
|
||||||
class Fedora(Distro):
|
class Fedora(Distro):
|
||||||
"""This covers all Fedora-based distributions.
|
"""This covers all Fedora-based distributions.
|
||||||
@ -175,10 +164,6 @@ class Fedora(Distro):
|
|||||||
return self.run_command_with_code(['rpm', '-q', pkg],
|
return self.run_command_with_code(['rpm', '-q', pkg],
|
||||||
check_exit_code=False)[1] == 0
|
check_exit_code=False)[1] == 0
|
||||||
|
|
||||||
def apply_patch(self, originalfile, patchfile):
|
|
||||||
self.run_command(['patch', '-N', originalfile, patchfile],
|
|
||||||
check_exit_code=False)
|
|
||||||
|
|
||||||
def install_virtualenv(self):
|
def install_virtualenv(self):
|
||||||
if self.check_cmd('virtualenv'):
|
if self.check_cmd('virtualenv'):
|
||||||
return
|
return
|
||||||
@ -187,26 +172,3 @@ class Fedora(Distro):
|
|||||||
self.die("Please install 'python-virtualenv'.")
|
self.die("Please install 'python-virtualenv'.")
|
||||||
|
|
||||||
super(Fedora, self).install_virtualenv()
|
super(Fedora, self).install_virtualenv()
|
||||||
|
|
||||||
def post_process(self):
|
|
||||||
"""Workaround for a bug in eventlet.
|
|
||||||
|
|
||||||
This currently affects RHEL6.1, but the fix can safely be
|
|
||||||
applied to all RHEL and Fedora distributions.
|
|
||||||
|
|
||||||
This can be removed when the fix is applied upstream.
|
|
||||||
|
|
||||||
Nova: https://bugs.launchpad.net/nova/+bug/884915
|
|
||||||
Upstream: https://bitbucket.org/eventlet/eventlet/issue/89
|
|
||||||
RHEL: https://bugzilla.redhat.com/958868
|
|
||||||
"""
|
|
||||||
|
|
||||||
# Install "patch" program if it's not there
|
|
||||||
if not self.check_pkg('patch'):
|
|
||||||
self.die("Please install 'patch'.")
|
|
||||||
|
|
||||||
# Apply the eventlet patch
|
|
||||||
self.apply_patch(os.path.join(self.venv, 'lib', self.py_version,
|
|
||||||
'site-packages',
|
|
||||||
'eventlet/green/subprocess.py'),
|
|
||||||
'contrib/redhat-eventlet.patch')
|
|
||||||
|
@ -1,50 +0,0 @@
|
|||||||
# vim: tabstop=4 shiftwidth=4 softtabstop=4
|
|
||||||
|
|
||||||
# Copyright 2013 Red Hat, Inc.
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
# not use this file except in compliance with the License. You may obtain
|
|
||||||
# a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
# License for the specific language governing permissions and limitations
|
|
||||||
# under the License.
|
|
||||||
|
|
||||||
import os
|
|
||||||
import sys
|
|
||||||
|
|
||||||
import install_venv_common as install_venv
|
|
||||||
|
|
||||||
|
|
||||||
def first_file(file_list):
|
|
||||||
for candidate in file_list:
|
|
||||||
if os.path.exists(candidate):
|
|
||||||
return candidate
|
|
||||||
|
|
||||||
|
|
||||||
def main(argv):
|
|
||||||
root = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
|
|
||||||
|
|
||||||
venv = os.environ['VIRTUAL_ENV']
|
|
||||||
|
|
||||||
pip_requires = first_file([
|
|
||||||
os.path.join(root, 'requirements.txt'),
|
|
||||||
os.path.join(root, 'tools', 'pip-requires'),
|
|
||||||
])
|
|
||||||
test_requires = first_file([
|
|
||||||
os.path.join(root, 'test-requirements.txt'),
|
|
||||||
os.path.join(root, 'tools', 'test-requires'),
|
|
||||||
])
|
|
||||||
py_version = "python%s.%s" % (sys.version_info[0], sys.version_info[1])
|
|
||||||
project = 'neutron'
|
|
||||||
install = install_venv.InstallVenv(root, venv, pip_requires, test_requires,
|
|
||||||
py_version, project)
|
|
||||||
#NOTE(dprince): For Tox we only run post_process (which patches files, etc)
|
|
||||||
install.post_process()
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
main(sys.argv)
|
|
2
tox.ini
2
tox.ini
@ -7,7 +7,6 @@ deps = -r{toxinidir}/requirements.txt
|
|||||||
-r{toxinidir}/test-requirements.txt
|
-r{toxinidir}/test-requirements.txt
|
||||||
setuptools_git>=0.4
|
setuptools_git>=0.4
|
||||||
commands =
|
commands =
|
||||||
python tools/patch_tox_venv.py
|
|
||||||
python setup.py testr --slowest --testr-args='{posargs}'
|
python setup.py testr --slowest --testr-args='{posargs}'
|
||||||
|
|
||||||
[tox:jenkins]
|
[tox:jenkins]
|
||||||
@ -23,7 +22,6 @@ commands = python ./tools/check_i18n.py ./neutron ./tools/i18n_cfg.py
|
|||||||
|
|
||||||
[testenv:cover]
|
[testenv:cover]
|
||||||
commands =
|
commands =
|
||||||
python tools/patch_tox_venv.py
|
|
||||||
python setup.py testr --coverage --testr-args='{posargs}'
|
python setup.py testr --coverage --testr-args='{posargs}'
|
||||||
|
|
||||||
[testenv:venv]
|
[testenv:venv]
|
||||||
|
Loading…
Reference in New Issue
Block a user