Make nova/quota use keypair objects

Related to blueprint icehouse-objects.

Change-Id: Ic06d2337c7ef1b028d305d0a7ec354238c239380
Fix unhandled InvalidServerState exceptions in server start/stop

Catch InvalidServerState exceptions in the server start/stop api
and return a 409 conflict rather than causing 500 errors

Closes-Bug: 1266379

Change-Id: I9d2437319d2cef93b9b10184e257acbd8eb45359
VMware: fix missing datastore regex with ESX driver

When using shared datastore and the ESX driver the administrator
is unable to indicate which datastore to use.

Note: there were extensive tests added for the VC driver for the
regex support. These are invoked by passing the flag for the regex
when the ESX driver is created.

Change-Id: Ifb0a4a8df2b26f3521b1301462d1f2c3eeba5c14
Closes-bug: #1246206
Fixes Hyper-V VHDX snapshot bigger than instance

In Hyper-V, the deployed images will be extended having their
metadata size added to their base image size. This may lead to
snapshots bigger than the flavor size.

This patch adds support to the V2 utils module, so that the
maximum internal size of a requested image may be calculated
in a similar way it is done in the V1 module.

VHDX format specs:
http://www.microsoft.com/en-us/download/details.aspx?id=34750

Closes-bug:  #1231911

Change-Id: I0d6aacb275f8af24554d3e8b6f04fe8a454b913f
Prevent caller from specifying id during ComputeNode.create()

The patch is to remove id when it was set before creating a compute
node in objects, so it can be generated automatically.

And check if the node exists before it is created.

Related to blueprint icehouse-objects.

Change-Id: Ib808643bff24b683ef330b5a1be5bc68ece30184
Prevent caller from specifying id during Service.create()

The patch is to remove id when it was set before creating a service
in objects, and check if the service exists before it is created.

Related to blueprint icehouse-objects.

Change-Id: I688bfc98234f4bc27fb15474e05c7f25753efaf7
Prevent caller from specifying id during KeyPair.create()

The patch is to remove id when it was set before creating a key pair
in objects, and check if the key pair exists before it is created.

Related to blueprint icehouse-objects.

Change-Id: I07609500e1135f54929265e06193c48e1bb083db
Prevent caller from specifying id during Migration.create()

The patch is to remove id when it was set before creating a migration
in objects, and check if the migration exists before it is created.

Related to blueprint icehouse-objects.

Change-Id: I37ff279f5f74d17ce9c173458ff35826fb10f143
Fix bad log formatting

Oslo blueprint logging-handleerror-raise-exception, will allow us to raise
exceptions raised during logging, using that code these are two outstanding logs
that have incorrect formatting.

Change-Id: Iea26bb9905cd7501094eaef8d932e78627cdbd5d
Rewrite InstanceAction object test cases using mock

This change rewrites the InstanceAction object test cases as a
groundwork for other InstanceAction changes to come.

This is a part of: blueprint make-instance-action-use-objects

Change-Id: I73eafa778bc0b558fe3c3497ec6892f52e8088db
Move consoleauth_manager option into nova.service and fix imports

Moves the consoleauth_manager option into nova.service like the other
manager options in commit 39ce4032.

The thinking for having it in nova.service is that's where
CONF.get('%_manager'...) is called.  It also makes no sense for the
option to be declared in nova.consoleauth.manager because if you change
this config option, then you don't want nova.consoleauth.manager loaded.

Closes-Bug: #1276398

Change-Id: I85e089239228920e9e58284cf6ff52e43bf85ab0
libvirt-volume: improve unit test time

A number of tests would invoke code that would sleep. This
patch adds a mocked function for the sleep.

Change-Id: I804a86e3b8b750919cf7a9547ef514f833a5fd49
Related-bug: #1279820
VMware: improve unit test time

A number of tests would invoke code that would sleep. This
patch adds a mocked function for the sleep.

Change-Id: I2d36bd456a11fcb7145baa5eb4c6875b9ec765d3
Closes-bug: #1280758
Disable IGMP snooping on hybrid Linux bridge

By default, Linux bridge activates the IGMP snooping on his switch.
It is unnecessarily on Linux bridge created by OVS/VIF hybrid vif
drivers because that switch is limited two ports.

That patch also refactoring OVS and IVS plug and unplug unit tests of the
hybrid drivers.

Closes-Bug: #1276038
Change-Id: Ib8bb1874d7a300fddffdc76ba67851109248bebf
Add resource tracking to unshelve_instance()

When unshelving an offloaded instance, a new host is scheduled for
the instance. However, the call to unshelve the instance on the new
host does not go through the resource tracker, which may lead to
over-allocation of the hosts resources.

This change adds resource tracking to unshelve_instance().

Change-Id: I682713c8ebc6276ac49822db5c8efc373d5b8f4d
Closes-Bug: #1241017
LibVirt: Disable hairpin when using Neutron

When hairpinning is enabled, ICMPv6 messages that handle
duplicate address detections return to the instance, causing IPv6
SLAAC configuration to fail

http://tools.ietf.org/html/rfc4862#section-5.4.3

Closes-Bug: #1251235

Change-Id: I65e1d40d33d6291bfd5558c7c346fc5fbf92cc56
Adds service request parameter filter for V3 API os-hosts request

Both V2 and V3 API do not support service request parameter filter
for os-hosts request. For V2 API, there is no need to having two
different clouds having different APIs (one with service filter
one without) but just take V2 API as a document bug. This patch
will only fix V3 API.

DocImpact
Adds the ability to filter a hosts list request by service for
the V3 API.

Change-Id: I42163707049300b0dee677558ed49280bcc7369d
Partial-Bug: #1224763
Merge "Adds service request parameter filter for V3 API os-hosts request"
Merge "Fix bad log formatting"
Merge "Prevent caller from specifying id during ComputeNode.create()"