Bad except clauses order causes wrong text in http response

InstanceInvalidState is an ancestor class of InstanceIsLocked, so
we need to catch InstanceIsLocked first. Fix the test case to
ensure we get the right http response back

Change-Id: Id22b284d9b7da8db4161ad8703bea1702cb0b82e
Sync the DB2 communication error code change from olso

Closes-Bug: #1244092

oslo patch set: 3acd57c2825a8bf6660c3124f12794414622eb26

Change-Id: I62e3a6d1137d53c4aa72b18db5bd9f7e41694436
Add FloatField for objects

This adds a Float field type for objects, which will be required for
things like Flavor.

Related to blueprint compute-manager-objects

Change-Id: I260a9855721046f3af24db102a24b974bfb3518a
Add API input validation framework

This patch adds a core part of API validation framework.
Other patches of each API schema are necessary.

The validation method is implemented with jsonschema library,
and some features are added:
 * validate minimum/maximum value of string number(ex. "10")
 * validate uuid string format

This framework can validate requests of both JSON and XML,
because of validating data after JSON/XML deserialization.

The API schema files for Nova v3 API will be created under
nova/api/openstack/compute/schemas/v3. For preparing these
files, this patch adds some __init__.py files.

blueprint nova-api-validation-fw

Change-Id: Ieba96718264ad2ddfba63b65425f7e5bbb8606a9
libvirt: Provide a port field for GlusterFS network disks

Some versions of libvirt (RHEL6's 0.10.2) require a port
specification with a GlusterFS network disk, or they reject
the disk with an "XML error: missing port for host" error.

Provide port 24007 as part of the disk specification.

Closes-Bug: #1254820

Change-Id: Iedcce32618813ed093b8e9aa8a69d1219b2118a5
powervm: remove powervm virt driver from nova

IBM's strategic direction for OpenStack powervm support
is to support powervc, and therefore support is being
pulled out for the existing powervm IVM/VIOS driver.

DocImpact

Change-Id: I9b7887c1914def145e87cf20dbd0ec65cb0fe987
Remove update_service_capabilities from scheduler rpc api

This method was already unused in the code base, so it can be
immediately removed from the client rpc api.  It must remain on the
server side (scheduler manager) until the api receives a major version
bump.

Related to blueprint rpc-major-version-updates-icehouse

Change-Id: I689bef71cc3db887bc571b9c364ee906a5a927f4
Pass Instance object to get_spice_console virt api

Update the virt API to be defined as taking an Instance object.
Luckily, no real changes are needed in the virt drivers to make this
work.  While the API is changing anyway, pass the context in as well
since we have a TODO to add it to virt API methods when convenient.

Change-Id: I2b2f389aee3f2cee3bb1361958da797735c60e18
Merge "powervm: remove powervm virt driver from nova"
Merge "Add API input validation framework"
Merge "Remove update_service_capabilities from scheduler rpc api"
Merge "Add FloatField for objects"
Make check more pythonic

Use 'if key in ('metadata', 'system_metadata'):'
instead of 'if key == 'metadata' or key == 'system_metadata''

The reason for the change is:
1. The issue has come up more than once in review cycles
2. It is easier to read

Moving forwards it may be useful if there are extra use cases.

Change-Id: Icd4ab4ebd021720b140f9fdb89d201781388c8ff
Merge "Pass Instance object to get_spice_console virt api"
Merge "libvirt: Provide a port field for GlusterFS network disks"
Merge "Make check more pythonic"
Merge "Bad except clauses order causes wrong text in http response"
Merge "Sync the DB2 communication error code change from olso"
XenAPI: Speedup host_ref cannot change - get it once

The host we run on is fixed - getting this each time from XAPI
is expensive

Change-Id: Ifee9a778f3ed855ef52b001de3fc2ebbd0b972cf
XenAPI: get_info was very expensive

Getting the whole VM record is expensive and slowed down Tempest tests
significantly.

Change-Id: I93bcef5b692a531aac41518dc29d5d4f46cded65