Fix sample parameter of agent API

The parameter of agent update API has been changed from "para" to
"agent" since Nova v3 API, and this patch fixes the sample doc.

Partially implements blueprint v3-api-specification

Change-Id: Ic9c0f11a637e48daa9457ab9ae923fefc0fb350d
Removes os-personalities extension from the V3 API

As per the discussion on the mailing list here:

http://lists.openstack.org/pipermail/openstack-dev/2013-September/015490.html

and discussions at summit, this patch removes the os-personalities
from the V3 API.

DocImpact

Part of blueprint v3-api-remove-extensions

Change-Id: I1a57ca812a9d71c0b1bab5d16ffad8eb82cba539
Remove traces of V3 personality extension from api samples

Removes occurences of the personality extension from the V3 API
samples as the extension has been removed. Cleanup of consistency
of image and flavor ref examples for the api samples.

DocImpact

Partially implements blueprint v3-api-remove-extensions

Change-Id: I43a34097904d3d7e280039c3d5d76479a49e92d0
Compact pre-Icehouse database migrations <= 150.

Compacts the pre-Icehouse database migrations <= 150 into a
single migration (150_havana.py).

Pre-Icehouse users will now need to upgrade to Havana before
running any Icehouse migrations.

Tested on MySQL and PostgreSQL schemas on Fedora 19 to ensure the
new compacted migration generates an identical schema to the
previous migrate scripts in Havana.

Specific changes include:

 1) Make migrations.instance_uuid a String 36.

 2) Add migrations_instance_uuid_and_status_idx index.

 3) rename instance info caches seq (postgresql only, dropped from
    baseline)

 4) Add source_node, dest_node columns to migrations. Indexes...

 5) Add new volume usage cache table.

 6) Drop aggregates.availability_zone column.

 7) Drop services.availability_zone column.

 8) Add instance actions tables.

 9) Convert PostgreSQL to INET.

 10) Add host to instance faults.

Implements: blueprint compact-havana-db-migrations

Change-Id: Ic0c318967b69af32536b5ab6999affc7755ec442
Compact pre-Icehouse database migrations <= 160.

Compacts the pre-Icehouse database migrations <= 160 into a
single migration (160_havana.py).

Pre-Icehouse users will now need to upgrade to Havana before
running any Icehouse migrations.

Tested on MySQL and PostgreSQL schemas on Fedora 19 to ensure the
new compacted migration generates an identical schema to the
previous migrate scripts in Havana.

Specific changes include:

 1) Make task_log period_begining, period_ending a DateTime.

 2) Change type of deleted column.

 3) Create shadow tables.

 4) Add task log unique constraint.

 5) Add security_group_default_rules table.

 6) Add networks unique constraint.

 7) Revert ip column length.

NOTE: This patch removes the 184_sqlite_upgrade.sql and
184_sqlite_downgrade.sql migrations since these were causing
new test failures and the standard DB migration seems to take
care of it.

Implements: blueprint compact-havana-db-migrations

Change-Id: If977e5f02fffbfb1bc257b3beddf2d7133e6c7b9
VMware: Fix unhandled session failure issues

VMware driver has a re-try mechanism to handle session expiration
failures. Due to a minor bug in the exception handling module, this
failure was unhandled.

The patch fixes this issue and has added tests.

Closes-Bug: #1252827
Change-Id: Ie91adb4b4b57b7cefeed855cdbe4710da86294f0
Document when config options were deprecated

When going through the code and looking for what code was deprecated and
when, its easier to know if there is an explicit comment. Otherwise one
has to trace through 'git log' and 'git blame' to be 100% sure that its
ok to remove the code.

Change-Id: I57b5861e57168c44729934757e732de962f3d91a
Clean up test cases for compute.manager._check_instance_build_time

This patch cleans up the unit tests related to the
_check_instance_build_time method so that they are actually verifying
the expected vm_state value when the instance is updated.

This patch also removes the test_instance_build_timeout test case
since it was completely redundant with the other one modified
here. I checked the git history and both test cases were added
in the same commit which confirms that they weren't added for
different reasons, i.e. separate bug fixes/use cases.

Change-Id: Ib384c84e2954bd303661386256053b3c1ad38239
Don't log stacktrace for UnexpectedTaskStateError

An UnexpectedTaskStateError is actually an expected behavior and we
don't need to log a stacktrace every time it happens. This stacktrace
is one of the most common ones found in nova-compute during gating jobs.

Change-Id: I8b33f72dc0f4beaca969de084481d66987faa974
Configuration element for describing video drivers.

The configuration is needed to allow the users to select
a non default video driver.

Partially implements blueprint libvirt-video-driver-selection
Change-Id: Ic6b3e44cfb7e22e0a215f7b159963df35ee1ebac
Libvirt: Adding video device to instances

Adding a video device driver to an instance, when VNC or SPICE are enabled.
Selecting the qxl driver when SPICE is enabled, otherwise use the Libvirt default, cirrus.

Implements blueprint libvirt-video-driver-selection
Change-Id: Icc3c538f2b81cc242baf87dc3538c27daf96ec38
libvirt: remove unused imports from fake libvirt utils

Remove code that is not used.

Change-Id: I3943ac2c68a149e27b47fb2604c05e3d2e5dc2e2
Closes-bug: #1258103
Add atomic flavor access creation

This adds the ability to update the list of projects for a flavor
in a single go during create. This avoids a brief period of public
visibility between the time the flavor is created and assigned a
project.

Change-Id: I5c15c78809bfcb78e110c0d45dde8460a0ec98d6
Add Flavor object

This patch adds the Flavor object and associated tests. It looks
mostly like the corresponding DB object, but without a nullable
flavorid attribute (which isn't actually optional). It also
makes a loadable 'projects' field with the associated project IDs
in it to avoid another object/interface for this simple thing.

Related to blueprint compute-manager-objects

Change-Id: Ib50a4efe874d6f19f5fc1178eb253ec8487f3808
Imported Translations from Transifex

Change-Id: Ib6dc03cfcda2d992d55bc00ee6f137fbd845f5f8
Fix changes-since filter for list-servers API

On list-servers API, "changes-since" parameter filters out servers
which have been created at the same date as the specified timestamp.
For example, the following server is filtered out with "changes-since=
2013-12-05T15:03:25":

  mysql> select display_name, updated_at from instances;
  +--------------+---------------------+
  | display_name | updated_at          |
  +--------------+---------------------+
  | vm01         | 2013-12-05 15:03:25 |
  +--------------+---------------------+

This bug causes some Tempest test failures, if the timestamp of server
creations are the same as the "changes-since" timestamp in second unit.
In addition, the behavior would be wrong from the viewpoint of its name
which includes "since".

This patch chanegs the server list for including the ones created at
the specified timestamp.

Change-Id: Icc10a1363503b3553d810c6be20b86b3da7ac1a0
Closes-Bug: #1236585
Merge "Add atomic flavor access creation"
Merge "Add Flavor object"
Make flavor_access extension use Flavor object

This makes the flavor_access extensions use the Flavor object instead
of calling into the compute/flavors.py file entirely.

Related to blueprint compute-manager-objects

Change-Id: I360c28ad2a239b34822ba9dda3b5c583c8c886b3
Cells: check states on resize/rebuild updates

When the API cell receives instance updates, check the task states for
any resize and rebuild states.  Make sure to only apply them if the
current task state for the instance is what we expect.  This will fix
any out of order messages from potentially stomping on re-setting the
instance to ACTIVE/None on finish of the actions.

Change-Id: Id79e35e29170ac2b8f42a955cecaae3072aba09c
Closes-bug: 1249072