Sync models.Console* with migrations.

Blueprint: db-sync-models-with-migrations

Change-Id: I2cceab6484b6d69b3f1aa1492e49d76a765b758d
Make sure periodic cleanup of instances continues on error

If an instance cleanup fails with an exception, no more instances
will be cleaned up. If the failure is permanent, this will block
other instances from being cleaned up for as long as it remains.

Resolves bug 1192712.

Change-Id: Ibdd69817ee0e6d0963637f38a8be3949e6e053ed
Port consoles extension API into v3 part1

This changeset only copies the v2 files into the appropriate v3
directories unchanged. The copy as-is will not be loaded by either
the v2 or v3 extension loaders. The second changeset will then
make the changes required for it to work as a v3 extension.

This is being tried in order to make reviewing of extension
porting easier as gerrit will display only what is actually
changed for v3 rather than entirely new files.

Partially implements: bp v3-api-extension-versioning

Change-Id: I60fd601e28ed69c2597cfc8742b2e17e706e2a1f
Port consoles extension API into v3 part2

This patch contains the changes required to adapt the consoles
extension and the corresponding unittest to the v3 framework.

Partially implements bp v3-api-extension-versioning

Change-Id: I1f5aa7e1a7f9e6d959bb16ea6c4c3d2cd17958b9
Port quota classes extension to v3 API Part 2

Ports the quota classes extensions and the corresponding
unittests to the v3 framework.

Adds quota class id to data returned by update which makes
it consistent with the behaviour of show.

Partially implements blueprint nova-v3-api

Change-Id: I7ca95e332933872ff20d719bf07dd10364510cbe
test_xmlutil.py covers more code in xmlutil.py

95% is covered now.

Change-Id: Icdcc4d423a0fc5ebd2433a3f072108f8d7ecb033
Fixes: bug #828617
Adding action based authorization for keypairs.

Added support for action-based policy to keypairs extensions.
Added the same for v3.
Fixes LP 1194739
Change-Id: Ie2a6f7b98845e0789f25c6fd0b97e119d5302046
Port images metadata functionality to v3 API Part 1

This changeset only copies the v2 implementation file into the
appropriate v3 directory unchanged. The copy as-is will not be
loaded by either the v2 or v3 extension loaders. The second
changeset will then make the changes required for it to work as a
v3 extension.

This is being done in order to make reviewing of extension porting
easier as gerrit will display only what is actually changed for v3
rather than entirely new files

Note that this functionality will be moved from core to an
extension.  Consensus appears to be that we continue to need this
functionality for v3 because some deployers disable the public
image endpoint due security concerns and whether this will be
fixed in glance for Havana. Deployers can disable this extension
if they do not want it.

Partially implements blueprint nova-v3-api

Change-Id: I900ff0f93bb790f4f7bbac66bb2437906cb905f5
Fix v3 hypervisor extension search action follow REST principles

The original search action as below:
'/os-hypervisors/[filters]/search'

It doesn't follow REST principles.

So change it as:
'/os-hypervisors/search?query=[filters]'

This follow the suggestion from
http://www.slideshare.net/apigee/restful-api-design-second-edition#btnNext at 77 pages.

Partially implements: bp v3-api-extension-versioning

DocImpact

Change-Id: I114868112e0dd719c046853de29df5cfa8dae6b5
hyperv: Fix vmops.get_info raises InstanceNotFound KeyError

Fixes a problem with the nova.virt.hyperv.vmops.get_info method raising
an InstanceNotFound with the wrong key for the exception message.  Also
adds a test case to make sure it works.

Fixes bug 1197506

Change-Id: I393951ff7bf6e28ce5d7a060cdd0011fe8ecc9ad
Port user_data API to v3 Part 1

This changeset only copies the v2 files (implementation and test)
into the appropriate v3 directories unchanged. The copy as-is
will not be loaded by either the v2 or v3 extension loaders. The
second changeset will then make the changes required for it to
work as a v3 extension.

This is being done in order to make reviewing of extension porting
easier as gerrit will display only what is actually changed for v3
rather than entirely new files

Partially implements blueprint nova-v3-api

Change-Id: If8075f202800f333753aa571fc3acf5b1a9f4880
Misc fixes for v3 evacuate API extension

Miscellaneous fixes for the V3 evacuate API extension:

- Python style attribute naming
- admin_password is no longer an optional return value. If it
  is not set it is returned as None

Partially implements blueprint nova-v3-api

Change-Id: Ida5da71bddd495880bafd90a578ca95b21319504
port Deferred_delete API into v3 part1

This changeset only copies the v2 files into the appropriate v3
directories unchanged. The copy as-is will not be loaded by either
the v2 or v3 extension loaders. The second changeset will then
make the changes required for it to work as a v3 extension.

This is being tried in order to make reviewing of extension
porting easier as gerrit will display only what is actually
changed for v3 rather than entirely new files.

Partially implements: bp v3-api-extension-versioning

Change-Id: I43de158d32c03ffa416699e7f6835a7dbcd9e6bd
Export just the volume metadata for the database to be populated

Change I8c01ba3 retrieved the metadata from Cinder, however it did
not format the output correctly resulting in the metadata being lost
between Cinder and Nova.

This patch fixes Bug 1175571 correctly, ensuring that metadata is
transferred from Glance images to Cinder Volumes and on to Nova
instances.

Change-Id: Ie3a688e6bff539e09ec705ed901534f5829cf167
Update openstack.common.config

Change-Id: I8f0112e760ba8376438738196234f5eb10b4e246
Port fping extension to v3 API Part 2

Ports the fping extensions and the corresponding unittests to the
v3 framework.

Partially implements blueprint nova-v3-api

Change-Id: I1db2a91f7e579356a77a196c46307492dd36e3d1
List migrations through Admin API

The os-migrations extension exposes endpoint to fetch all migrations.
The migrations can filtered by host and status. If cells are
enabled migrations can be listed for all cells or can be filtered for a
particular cell.

The route for fetching migrations for
a region is - v2/{tenant_id}/os-migrations. Filters can be passed as
query parameters -
v2/{tenant_id}/os-migrations?host=host1&status=finished&cell_name=Child

DocImpact

Change-Id: Id70dbece344a722b2dc8c593dd340ef747eb43d3
Implements: blueprint list-resizes-through-admin-api
Add missing matchmaker_ring

commit b5a3d05 synced this change:

  1d7920a Extract matchmaker_ring to own module

but forgot to include the new matchmaker_ring module.

Change-Id: I21f3bc099d48accc4dd631bebfe914dd24f8e722
Sync latest rpc changes from oslo-incubator

Includes these commits:

 3006787 Sanitize passwords in _safe_log
 c37f6aa Add support for heartbeating in the kombu RPC driver
 323e465 Add conditional exception reraise
 dea334a Replace sys.exit by a RPCException
 719eba4 Don't reconnect to exclusive fanout consumers.
 22ec8ff Make AMQP based RPC consumer threads more robust
 13650b1 rpc: remove some unused serialization code
 e204885 Optionally reject messages on exception.
 688832f Remove unused zmq relay functionality

Change-Id: I8629c271bc00571783f9b77ec36034945df9a583
Add unique constraint to AgentBuild.

Added unique constraint 'uniq_agent_builds0hypervisor0os0architecture0deleted'
('hypervisor', 'os', 'architecture', 'deleted') to AgentBuild model and
migrate sripts. Added new exception `AgentBuildExists`.
Updated agent_build_create(). Tests updated respectively.

blueprint db-enforce-unique-keys

Change-Id: I6c41378470230a48773da8082b17699b09785051