| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |\ \ \ \ \ |
|
| | | |_|/ /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Fix bug 1019020: UNKNOWN_STATE is not a valid status response
according to the OS API specification, UNKNOWN should be returned.
Change-Id: If5f55051fc0f433f11c371f80f403ededf2b4c46
|
| | |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Kernel and ramdisk IDs are using currently being inserted in the metadata
using the keys aki-id and ari-id. They should be using the keys kernel-id
and ramdisk-id.
http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/instancedata-data-categories.html
This bug is in a block of code which did not previously have test coverage;
this change also adds that coverage.
Change-Id: I2ee3663169160c0e351e548d831fef2f34f9f2fd
|
| |\ \ \ \ |
|
| | |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
These have snuck in recently since tox does not appear to run the
hacking tests anymore during gating.
Change-Id: Iaaffdee03964baf4c47d25bde93c54d3b59e2154
|
| |\ \ \ \ |
|
| | |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Patch to refactor Dom0 plugins introduced a bug where the same Glance
server would be selected on each retry. This patch introduces a callback
which lets the retry function choose a new Glance server on each pass.
Fixes bug 1019032
Change-Id: I6bac88a913ab19311671d8de7c9cc8f248928b2c
|
| |\ \ \ \ |
|
| | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This helps in corner cases where the exception prevents network deallocation.
Change-Id: I88849899c5a2ed69696b644cb5f856fca5f40da7
|
| |\ \ \ \ \ |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
tox uses pep8 1.1, but tools/test-requires was set to pep8 1.2.
This sets pep8 back to 1.1
Change-Id: I63612d84a245def20367e192f1dda88aff061cbc
|
| |\ \ \ \ \ \
| |_|_|/ / /
|/| | | | | |
|
| | | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Instead of a hard-coded MANIFEST.in to list non-code files to be included in
the tarball, use the setuptools-git plugin to ensure that every file that's
in git will wind up in the tarball. The only things needed in MANIFEST.in
now are files that are generated as part of the sdist run.
Change-Id: I76df685d58f7b56977d859e8df92e845f450b3e4
|
| |\ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Implements blueprint multi-process-api-service
This is based on Huang Zhiteng's patch.
This patch adds support for running services as multiple processes. This
is primarily intended to be used with the API service as a way to provide
more concurrency than eventlet can sometimes provide.
A SIGTERM or SIGINT signal will cause the parent process to gracefully
terminate the child processes, allowing them to finish processing the
requests currently being processed. The parent will wait for the
children to finish before exiting.
Change-Id: Ie6d6802626eb42d5e64c4167be363fbf6cea2a1b
|
| |/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Instance ids are used by the ec2 layer to create ec2-ids. This
currently uses the id column in the instances table. This patch
creates a new mapping table for ec2-ids. This decouples the ec2
layer from needing direct access to the instances table so that
it can eventually be pulled out if necessary. It also matches the
way that the ec2 layer maps image, volume, and snaphsot ids.
Finally, it allows us to eventually remove the id column from
the instances table and only have one canonical id (uuid) to
refer to instances.
Change-Id: I02ad9fad37e6a04675543398f686351634bc1bb9
|
| |\ \ \ \ \ \ |
|
| | | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Currently Nova does not configure any CPU model for libvirt
guests. This is sub-optimal because the default KVM CPU
model has changed a number of times, and more importantly
VMs are not able to take advantage of many performance
features in newer CPUs. To get a consistent CPU model exposed
to the guest and maximize performance of VMs in the cloud,
explicit specification of CPU models per host is desirable.
This change adds a new Nova config flag:
libvirt_cpu_mode = host-model|host-passthrough|custom
Where
* host-model == configure a model that matches the features
available in the host CPU
* host-passthrough == passthrough the host CPU precisely
with no change at all
* custom == configure a specific named CPU model
If the 'custom' mode is used, then the additional flag
is available to choose the model:
libvirt_cpu_model = <one of the names from /usr/share/libvirt/cpu_model.xml>
eg
libvirt_cpu_model = core2duo
If specifying a custom CPU model, it is wise to choose one that is
capable of running on all the various different Nova hosts in the
cloud. That said, libvirt will enforce compatibility at time of
starting or migrating guests & refuse the operation if required.
If using either the host-model or host-passthrough modes, and use
of live migration is desired, admins should ensure that all hosts
have a homogeneous CPU model. If hosts have a hetergeneous CPU
models, then a custom named CPU model is a better choice
This configuration only works for libvirt >= 0.9.10, due to the
use of the 'mode' attribute on the <cpu> element for configuring
host models.
Fixes: bug #1003373
Implements: blueprint libvirt-xml-cpu-model
Change-Id: I90ce78d7e29bd0d563e3bc547b7cc5d64dd9496e
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
| |\ \ \ \ \ \ \ |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Fixes bug 1009681
This offers a default scheduler driver that will be used by the
multischeduler for requests that are not destined for the
compute or volume topic. This is useful for openstack extensions
that want to use the nova-scheduler to schedule requests to
compute nodes but provide their own manager and topic.
Change-Id: I753e87fc8979fd0b62529974f00cf11fa55b3d63
|
| |\ \ \ \ \ \ \ \ |
|
| | | |_|_|/ / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Adds a new extension to get information about hypervisors (as opposed
to compute hosts), including a list of hypervisors matching a regular
expression (database regular expression, i.e., %'s) and a list of
hypervisors with the list of instances living on those hypervisors.
Change-Id: I2e44e82e123e5e727b49622fe5e966131658f9f6
|
| |\ \ \ \ \ \ \ \ |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Moves shareable code out to a new utils file where future Dom0 plugins
can make use of it.
Change-Id: I57eb20b4ca308fdda424599d36d94f120d99ec0d
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
XenAPI stopped using tpool in commit a3a5f23487e9ca4257551fd3d430d8ebcfca131a
so remove the stubs that are unnecessary now
Change-Id: I709a1b557576471d3b69c2a28f00d25602ed090f
|
| |\ \ \ \ \ \ \ \ \ \
| | |_|_|_|/ / / / /
| |/| | | | | | | | |
|
| | | |/ / / / / / /
| |/| | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The get_cpu_info method in the libvirt driver currently uses
XPath queries to extract information from the capabilities
XML document. Switch this over to use the new config class
LibvirtConfigCaps. Also provide a test case to validate
the data being returned
Fixes: bug #1003373
Implements: blueprint libvirt-xml-cpu-model
Change-Id: I4946a16d27f712ae2adf8441ce78e6c0bb0bb657
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
| |\ \ \ \ \ \ \ \ \
| |_|_|_|_|_|_|_|/
|/| | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The name was confusing, because it was a uuid in a column named
instance_id.
Change-Id: I0df0fe84b4891da9529639cf8c07c3e4d86a9958
|
| |\ \ \ \ \ \ \ \ \
| |_|/ / / / / / /
|/| | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Add a tox environment that will install all of the optional
packages and which will run with system site packages enabled
so that we pick up those tests as well. This should allow us
to run expansive tests on jenkins that aren't normally required
locally, but which are possible.
Change-Id: Iabd61874061e24950d4d2082a2fba158b4601624
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Libvirt exposes the host/hypervisor features using an XML
schema known as "capabilities". Currently the libvirt driver
code just parses this in an adhoc manner using xpath queries.
This change provides a handful of classes LibvirtConfigCaps,
LibvirtConfigCapsHost and LibvirtConfigCapsGuest for maintaining
an object based representation of the capabilities. The
LibvirtConfigCapsHost class also uses the existing LibvirtConfigCPU
class
Fixes: bug #1003373
Implements: blueprint libvirt-xml-cpu-model
Change-Id: Ie962c6378b0da09eddc75983d4824a226ed1c25e
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
| |\| | | | | | | | |
| |_|_|/ / / / / /
|/| | | | | | | | |
|
| | | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
The previously added (but not used) LibvirtConfigCPUTest class
was too inflexible. It did not distinguish between parts of the
XML schema which applied to both capabilities & domain XML,
vs those which only applied to the domain XML. By representing
features as a plain string it did not allow for setting attributes
on feature flags like policy. This change replaces the single
LibvirtConfigCPUTest class with 4 new classes:
- LibvirtConfigCPUFeature - base class for defining CPU features
- LibvirtConfigCPU - base class for defining CPU models
- LibvirtConfigGuestCPUFeature - extension for setting the guest
specific feature policy
- LibvirtConfigGuestCPU - extension for setting the guest specific
match policy, and allowing use of host CPU model passthrough
Fixes: bug #1003373
Implements: blueprint libvirt-xml-cpu-model
Change-Id: I0aa0ddfb86cf8b89b2e4dcc95e21bdca304bd6b3
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
| |\ \ \ \ \ \ \ \ \ |
|
| | | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | |
| | | | | | | | | | |
Fix setup.py to include bin/nova-novncproxy in generated tarballs.
Fixes bug 1018829.
Change-Id: Iad2aa32602224e15bb879f81a13b764fc09d9c67
|
| |\ \ \ \ \ \ \ \ \ \
| | |/ / / / / / / /
| |/| | | | | | | | |
|
| | |/ / / / / / / /
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | |
| | | | | | | | | |
Commit aa9a592abcbfabad4d2a3f8bb49d1b28d7724262, which renamed
the libvirt module from 'connection' -> 'driver', accidentally
introduced a flaw in the test_connection_to_primitive libvirt
testcase.
The original code in that test case was
connection = nova.virt.libvirt.connection.LibvirtDriver('')
jsonutils.to_primitive(connection._conn, convert_instances=True)
Notice how the second line is using the '_conn' attribute on
the LibvirtDriver *object instance*
Now the new code is
connection = libvirt_driver.LibvirtDriver('')
jsonutils.to_primitive(libvirt_driver._conn, convert_instances=True)
Notice how the second line is using the '_conn' attribute on
the LibvirtDriver *class*. Predictably this causes the testcase
to fail due to the '_conn' attribute not existing.
Change-Id: Ie35718ea0c50648938effc53d67a110f280644d6
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
|
| |\ \ \ \ \ \ \ \ \
| |_|_|_|_|_|/ / /
|/| | | | | | | | |
|
| | |/ / / / / / /
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Exact same three lines are at line 614.
Change-Id: I806574e9d5152e7c63bdb45e86e8844ce78fbc9f
|
| |\ \ \ \ \ \ \ \ |
|
| | | |_|/ / / / /
| |/| | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
In preparation for integration with the new Glance client, this
drops the return of image metadata from GlanceImageService.get
in addition to renaming it to 'download'.
Change-Id: I75ca3a0a909335e74cd521da6f894c163e773e94
|
| |\ \ \ \ \ \ \ \
| |_|/ / / / / /
|/| | | | | | | |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Right now, any routes that exist on flat_interface (other than the default
route) get lost when we set up the bridge. This patch migrates them over
to avoid losing that connectivity. It does so by using 'ip route' instead
of 'route', which is much easier to script and is consistent with other
use of iproute2 tools in linux_net.py.
Bug 962822
Change-Id: I7d9e8e05169f2f87e8481595397c02fd3a3612f4
|
| | |/ / / / / /
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Fix a typo in nova-all where logging.exception was used instead of
LOG.exception like the rest of the code uses
Change-Id: I6f88014e1c5d87a9b84bb2ac833931a93aaf96c0
|
| |\ \ \ \ \ \ \ |
|
| | | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | |
| | | | | | | | |
Since there is no difference in index vs detail in the v2 API,
let's drop that as a requirement in the GlanceImageService.
Related to bp integrate-python-glanceclient
Change-Id: If98cf68e7e18fa78a2f9c09526ca9e80d2e27c1b
|
| |\| | | | | | | |
|