| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This aides in detecting connection interruptions that would otherwise
go unnoticed.
Fixes bug #856764
Change-Id: Id4eb3d36036969b62890175d6a33b4e304be0527
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There's nothing in Oslo declaring an 'host' configuration option, so
relying on it isn't a good practice. Let's use the same default value as
intended, but make it work in any case.
Change-Id: I9c898647e68e35435d1a58f920b6e610f217e4e8
Signed-off-by: Julien Danjou <julien@danjou.info>
|
| |
| |
| |
| |
| |
| |
| | |
This is compatible with Python 3.x and works
with any Python version >= 2.6.
Change-Id: I6d8afdc5135cb01e6096f4d25b4ca632fe1e75cd
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The various filters either asserted or incorrectly
assumed that an empty arglist matched the filter.
Add testcases to avoid regressions.
Change-Id: If90fbad3d54749ecc645071675402ea2613870a2
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
A small attempt to make our generated config file more user-friendly by
clearly identifying that 'log-format' is deprecated.
Change-Id: I45b32121de94064a4318dd69ec7ff81a37dae4a9
|
|\ \ \ \ |
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Nova has some default configuration option (bindir) value that uses
sys.prefix as path start. That can generates weird paths depending on
the system where you run the configuration generator.
This patch fixes that by hardcoding a replacement of sys.prefix to /usr,
which is what's actually expected most of the time.
Change-Id: Ied3b58695965a3102670e3761701fbe10ac74785
Signed-off-by: Julien Danjou <julien@danjou.info>
|
|\ \ \ \ |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
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>
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
|\ \ \ |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | | |
|
| | |_|_|_|/
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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
|
|\ \ \ \ \ \
| |_|_|_|_|/
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
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
|
| |_|_|_|/
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fixes bug 1193557
Change-Id: I483099b205c71d66cf97522307d8265abe83a488
|
|\ \ \ \ \ |
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Python3 enforces the distinction between byte
strings and text strings more rigorously than
python2. So use six.text_type where approiate
and six.string_types.
Change-Id: Iaab049fff97278d94fd7ab932a514949094a949a
Signed-off-by: Chuck Short <chuck.short@canonical.com>
|