| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Provides support for letting each running service finish in-progress
requests and cleanup gracefully before stopping.
blueprint graceful-shutdown
Change-Id: Idf137620b87417de89eba23f05daf08780dc9dff
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In some cases we need to save an exception and reraise it only
under certain conditions. As written, the
save_and_reraise_exception context always reraises, which means
it can't always be used. This change adds a flag that allows
conditional reraising to address the limitation.
Change-Id: Ib5c6406a1b91daff94cc4aa305dcb7d6262aecdc
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change replace sys.exit by a RPCException like the zmq
implementation does, to allow library users to handle the case of the
rpc failure in their applications.
Change-Id: Iafda7bfa20840fa5488dece1d5ad49e2b14b73b5
|
|\ \ \
| |_|/
|/| | |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
replace "no" (string) with False (boolean). Added a test case
Fixes LP# 1195511
Change-Id: Ib72689b11d747508850ccab8ef1d73727da2caa6
|
|\ \
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Common routines for Key Derivation (RFC 5869) and Symmetric Cryptography
that uses standard Crypto functions as exported by PyCrypto
Change-Id: Ib43ac788ec98b8a1b678ac457244a06a16833761
Implements: blueprint trusted-messaging
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| | |
In locked down environments, PATH might be unavailable
when running rootwrap.
Change-Id: Ia55514a7d69ab26c2bcf5d1839da1d36aaf46ebc
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| | |
Fix basestring/str idioms for both python2 and python3
(used by python-novaclient).
Change-Id: I440c7c1c18660c3d73f699c0a02cbbfee331bfbf
Signed-off-by: Chuck Short <chuck.short@canonical.com>
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
We found that if tests run with testr --subunit option it can cause
wrong implementation of tests results.
Change-Id: I98c3f3ed90e2291ef984f07a93c89d24da7855d9
|
|\ \ \
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Users who may not know that configuring a backdoor_port with 0
allows multiple services to be enabled for the eventlet backdoor
or who simply want a more predictable port assignment might like
this patch. If the specified port is in use, it is incremented
until a free port is found. This is a backdoor_port collision
recovery scheme as opposed to the collision failure scheme
that exists today.
This related to I95fdb5ca: Add support for backdoor_port to be
returned with a rpc call.
Change-Id: I7ec346db3575995fa15483b617eea34c1e003bb0
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| | |
This enlightens jsonutils.to_primitive() about how to serialize
netaddr.IPAddress objects. Since these types are serializable
in their native form with just string coercion, just do that here.
Fixes bug 1195097
Change-Id: I358b0731e4d3774e5b36aefb5384fdfb75fd31b6
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes bug 1192924.
Change-Id: Ic6d9715c945e620da20b43310e8e8ba79296e4ad
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
No need to make this any more ugly than it needs to be :)
Change-Id: Ib7ef13bb5f04e1780565de805eb81413d7b21274
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This unfortunately needed if we want to parse URL with params and
unknown schemes.
Change-Id: Ia7d8212370201254e537e6f1dd9b15d669a3252f
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
See bug #1180166, basically we shouldn't be trying to reconnect to
exclusive queues.
Fixes: bug #1180166
Change-Id: I71ac5a150ea8c4d97a34404cb821ce8e8dfa152d
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
bug 1189711 Should RPC consume_in_thread() be more fault tolerant?
There are unprotected holes in the thread kicked off by RPC
consume_in_thread such that an exception will kill the thread.
This exists for both the service (TopicConsumer) and the new
reply proxy (DirectConsumer) consumers. This patch plugs
those holes as close to the base of the consumer thread as
possible by catching all non-caught exceptions and retrying
with sleeps between retries and some pacing of the log
output to prevent log flooding.
Change-Id: I0d6ec8a5e3a310314da201656ee862bb40b41616
|
|\ \ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
These filters have been implemented in Quantum before:
- IpFilter provides support for filtering ip commands
- IpNetnsExecFilter is a chaining command filter that
verifies that the command to be executed by ip netns exec
is covered by other established filters.
IpNetnsExecFilter has been restricted to ensure that the
filter chains have all matching filters run as the same
user.
EnvFilter is a new filter derived from CommandFilter
that allows a Command to be optionally prefixed by "env"
and a specific list of environment variables.
This is intended to replace the specific DnsmasqFilter
and DnsmasqNetnsFilter in the future when all consumers
have been updated.
Implements bp rootwrap-quantum-features
Change-Id: I0cf39967126e99a8dc53d21bee824a0fe2f63aa0
|
|\ \ \ \ \ \ \ |
|
| | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
The first commit of Nova contains this code as
https://github.com/openstack/nova/blob/bf6e6e7/nova/rpc.py#L149
try:
publisher.send({'result': reply})
except TypeError:
publisher.send(
{'result': dict((k, repr(v))
for k, v in reply.__dict__.iteritems())
})
but when the kombu driver was first added, it became:
https://github.com/openstack/nova/blob/9cb46c48/nova/rpc/impl_kombu.py#L717
try:
msg = {'result': reply, 'failure': failure}
except TypeError:
msg = {'result': dict((k, repr(v))
for k, v in reply.__dict__.iteritems()),
'failure': failure}
conn.direct_send(msg_id, msg)
Obviously, TypeError can't be raised with the current code and we dump
everything to json these days before passing down to kombu, qpid, etc.
Change-Id: I932fbfbbe824fbd9de8d31f070878e9db853ee45
|
|\ \ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
When there is no help available for an option, the generator.py
simply crashes. This fixes this by initialising opt_help.
Fixes Bug1194524
Change-Id: I94c23973bdad603703f12e936b7e72fe0e81c3f0
|
|\ \ \ \ \ \ \ \
| |/ / / / / / /
|/| | | | | | | |
|
| |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Raising NEW exception is bad practice, because we lose TraceBack.
So all places like:
except SomeException as e:
raise e
should be replaced by
except SomeException:
raise
If we are doing some other actions before reraising we should
store information about exception then do all actions and then
reraise it. This is caused by eventlet bug. It lost information
about exception if it switch threads.
fixes bug 1191730
Change-Id: I7bce659591c4c3e4bc41e12d7d8390128c30e2e4
|
|\ \ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
There is no point to ignore this check because everything works
correctly without it.
Change-Id: I38b6f2314208b3bfb5898b2a08d7fe7c0f640e57
|
|\ \ \ \ \ \ \ \ |
|
| | |_|_|_|_|_|/
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Config tox.ini updated to run testr instead of nosetests.
File test-requirements.txt modified respectively.
Config .testr.conf added.
Testr allows for more flexible testing, more consistent use of the
unittest protocol and, most importantly, faster testing via parallelism.
Part of blueprint run-tests-script.
Change-Id: Iba847d430a18458a1a68e6ef07541d29c0c01c64
|
|\ \ \ \ \ \ \ \
| |_|/ / / / / /
|/| | | | | | | |
|
| |/ / / / / /
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This framework was merged a year ago and AFAICT hasn't seen use beyond
the two initial wikimedia extensions for Nova.
The framework basically allows a way for a single plugin to register API
extensions and notification hooks. Both of these can be done by directly
using config opts like osapi_compute_extension and notification_driver
so this framework really only helps if we expected to (and wanted to)
lots of these plugins in the wild.
Nova is the only project using this and we don't have an active
maintainer listed in the MAINTAINERS file, so it seems like it's time to
remove it from the incubator.
Change-Id: I5552b5625e26f4821464807743545ec6f5117f2b
|
| |/ / / / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The new messaging work will register options like rpc_backend and, since
the existing RPC API registers those options with CONF, we need to run
the messaging tests with a different ConfigOpts object.
It's actually probably pretty sane for all unit tests to use a per-test
ConfigOpts object rather than cfg.CONF anyway.
The kombu and zmq tests have an issue with this where they rely on being
able to call self.config() before the base class setUp() is called.
Fixing this properly is a little tricky, so for now, initialize
self.conf early to cfg.CONF just for these tests.
Change-Id: I7b2e3db7c21c511f3ab16ac866e0cc80846cbd80
|
|\ \ \ \ \ \ |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Rather than blindly ack() all messages, consumers can be created
that reject() the message if an exception occurs in the callback.
Currently only implemented in kombu driver.
Change-Id: I308dd794b50966e3a189d31b2b51fdac36cd7d3a
|
|\ \ \ \ \ \ \ |
|
| | |/ / / / /
| |/| | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Update the kombu requirement based on the new
value in the global requirements list.
The new version of kombu we are using depends on
anyjson>=0.3.3.
Related to bug #1134575
Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>
Change-Id: I36211a2730bfc712e189d39893ab2af513ce3ba9
Signed-off-by: Doug Hellmann <doug.hellmann@dreamhost.com>
|
|\ \ \ \ \ \ \
| |_|_|_|_|_|/
|/| | | | | | |
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Creates a new file called TESTING.rst making the file discoverable.
Contents of the file include very generic instructions to get newcomers
started with testing. File also includes links, including the OpenStack
wiki page on testing, encouraging the curious to access greater options
for testing individual projects as well as greater flexibility in testing.
Change-Id: I57ab249133eccd38fa5302809e06172ed6a7d89e
|