Volume backed live migration w/o shared storage

This patch allows live migration of volume backed instances without
the need for shared storage (For Libvirt only).

Fixes LP Bug #1074054
DocImpact

Change-Id: If7abd63a610a44720cec2d4021cc4ee737ea301d
Allows an instance to post encrypted password

Exposes a new url in openstack metadata with two methods:

GET 169.254.169.254/openstack/latest/password # get password
POST 169.254.169.254/openstack/latest/password # post password

The password can only be set once and will be stored in an
instance_system_metadata value with the key 'password'

Part of blueprint get-password

Change-Id: I4bbee8326a09fe38d6393e9e70f009daae0c6ece
Remove the deprecated quantum v1 code and directory.

The code in this directory is the v1 to integrate quantum with nova. at
that time, quantum hasn't a client and keystone support. At the nova side
, there is a quantum manager that connect to quantum server. now, all code
has been removed execept the nova_ipam_lib which is unused too. this patch
removes the nova_ipam_lib.py.

Change-Id: I05146d47fb57f215f8d010dbde8fdc0b2de55301
Add syslogging to nova-rootwrap

Add syslogging capabilities to nova-rootwrap, if you set parameter
use_syslog to True. You can specify a facility (syslog_log_facility)
and level (syslog_log_level) to use. Finalizes bp nova-rootwrap-options.

In doing so, it moves rootwrap config parsing to a nova.rootwrap.wrapper
object (and adds unit testing for it). It also improves log messages
content (including the name of the matching filter and the escalation
path used). Incidentally fixes bug 1084766.

Change-Id: Idb8cd9c9febd6263dafab4bc2bff817f00c53dc0
Add the missing replacement text in devref doc.

Add AggregateInstanceExtraSpecsFilter's replacement text in
doc/source/devref/filter_scheduler.rst

Change-Id: I5b74c5f51eb85f79f79a2d2c556d6522d97f1497
Fixed deleting instance booted from invalid vol

1. Translated the exception (NotFound) raised from Cinder client to
Nova's native exception (VolumeNotFound).
2. Added unit test coverage.

Fixes LP: #1087214.

Change-Id: I3cee31a9fd068b65a4097f3f3054aebb69d9ba61
Update command on devref doc

Update the apt-get command to build mysql dependency for ubuntu.
It currenly says apt-get install build-dep python-mysqldb
which should just be apt-get build-dep python-mysqldb

Change-Id: I541f7b80802a6b7191f2fe0338965ef425e7c2fd
Refactor xvp console

Small re-factoring of the xvp console mainly checking
to make sure that we catch exceptions when they haappen.

Change-Id: I0164111ffa4439d82ae26084433901236a4a2ddc
Signed-off-by: Chuck Short <chuck.short@canonical.com>
Move DNS manager options into network.manager

The instance_dns_manager, instance_dns_domain and
floating_ip_dns_manager options are only used in nova.network.manager.

blueprint: scope-config-opts
Change-Id: Ic4dfe01ec87e0b9a4ba244f85cf0a81568f3f9bf
Move network_driver into new nova.network.driver

Add a new load_network_driver() function which constrains the use of the
network_driver option and move the option into nova.network.driver.

blueprint: scope-config-opts
Change-Id: I0a839765890093dc871b48435cfd113e0f8e46c4
Replace fixtures.DetailStream with fixtures.StringStream.

Fixtures 0.3.12 adds StringStream as a successor to DetailStream (this
change was made for compatibility with python 3). Update Nova's tests to
use StringStream instead of DetailStream.

Change-Id: If697859a52f3a7db9dab38bd080b779bb3270287
Remove the WillNotSchedule exception.

Removes the WillNotSchedule from the Nova exception module. It
is no longer being used.

Change-Id: I865402ec30f9fa1de31c443db51e7f53004d6817
Add more association support to network API

Adds API support to:
- Disassociate only host from network
- Disassociate only project from network
- Associate network with host (project already supported)

New functionality is added to a new extension networks_associate,
but the original networks extension is modified to allow networks_associate
to extend how it needs to. The original behavior of the networks extension is
preserved (no new functionality, nor change in existing behavior) in
terms of the API presented.

Bumps RPC API version for network RPC server version in order add
the associate function which allows to both associate and disassociate
a network with a host and or tenant. Has overlap with disassociate
and add_network_to_project but these are kept for backwards compatibility

DocImpact
Implmenents: blueprint apis-for-nova-manage
Change-Id: I78fd76e0696d1c872646355ab04d32f051551def
Add accounting for orphans to resource tracker.

Add accounting for orphaned instances to resource tracker.  Orphans
are instances that, for whatever reason, exist on the hypervisor
but are not accounted for in the Nova DB.

Such instances would cause resource tracker to under-report usage
numbers and result in out of memory errors during build.

Change-Id: Icc970e34e01ff8c7dfb000889e5ea6e2d0421c77
Merge "Add syslogging to nova-rootwrap"
Merge "Add accounting for orphans to resource tracker."
Added conf support for security groups

Modified the way nova.compute.api.API loads the security group API.
Previously it would accept a named-parameter and if that was None, default
to SecurityGroupAPI. It still accepts a named-parameter but if that is
None, then it will attempt to load the API from CONF, and then default
to SecurityGroupAPI. The basic use-case should not be altered by these
changes.

Implements: blueprint nova-securitygroups-expansion
Change-Id: Ib252a0755f320289c3c7cb6518d55e63d3392789
Move TimeOverride to the general reusable-test-helper place.

Change-Id: Ife5355252813f9b14d5b3f8b543649b88a92acb9
Fix API samples generation.

In Change: Ie46b24a65145c407d46974b63a97a84911223547 a check
was added to _verify_response() to verify the samples.

However, when trying to generate new samples this blocks
_write_sample() because it attempts to read a non-existent file.

This change ensures that the sample is created before the
verification and still retains the behavior that the samples are
only updated on changes.

Change-Id: I1527ba71676b2e1e10bd334f2a7878404d12600c
Properly remove the time override in quota tests.

Using set_time_override directly makes it easy to forget to call
clear_time_override, and forgetting to call it will break tests
that rely on time being sensible, advancing normally etc. Using
useFixture(TimeOverride()) ensures that clear_time_override is
automatically called when the test ends.

Change-Id: I8753524324fb9a20c30b41a114b265b336b3d54c