Don't update DB records for unchanged stats.

Change-Id: I6eb0adba12676cf057c92fb0b54431cfe6a76210
Fix error in instance_get_all_by_filters() use of soft_deleted filter

Change-Id: I7c2fab48944e34765b3fff8ce10bc64a5cd826c8 introduced the
'soft_deleted' filter to the above method to tweek the behavior of the
existing 'deleted' filter. In doing so, an error was introduced that
changed the original behavior of the 'deleted' filter when used by
itself, in how it treated both soft- and hard-deleted instances the
same.

The original merged patch did not include test coverage for the changes
made to the db api. This change fix the error so that the original
behavior of the 'deleted' filter is restored while also adding full
test coverage for the modifications to the db api that has already
merged.

Finally, the support method create_instances_with_args() used by the
new tests was renamed create_instance_with_args() to reflect that
when called, it just creates a single instance.

Resolves bug 1181865.

Change-Id: Ibb82af09d3876904455ca7c93e14e9722ed31d35
Remove tempest hack for create/rebuild checks

A bug in Tempest required us to check quotas before requesting image
information. Now that this has been fixed upstream, we can remove our hack to
get around this.

Change-Id: I7ef1cd2f4f641fb5616945b66740820a4003b66d
IPMI driver sets bootdev option persistently.

This patch changes baremetal ipmi driver's behavior with regards to
setting the chassis boot device.

Previous behavior: set bootdev = pxe for next boot only.
New behavior: set bootdev = pxe persistently.

Fixes bug 1178092

Change-Id: I735965422a950fbd249414b5eecd0a1b21dbabea
Moved sample network creation out of unittest base class constructor.

This sample networks only needed in:

 nova.tests.api.ec2.test_cloud
 nova.tests.integrated.test_api_samples
 nova.tests.network.test_manager
 nova.tests.test_libvirt
 nova.tests.test_xenapi

Moreover, base class constructor is not good place for sample
data creation. Database should be empty before runing tests.

Fixes: bug 1181502

Change-Id: I8dcaa5b36a1da0c0928c9445c556d788d463844e
In utils.tempdir, pass CONF.tempdir as an argument.

It's ugly, and potentially racy, to mess around with other modules'
global variables.  Instead, pass CONF.tempdir into tempfile.mkdtemp
as the 'dir' keyword argument.

Because we already pass **kwargs to mkdtemp, inspect **kwargs and
only set 'dir' if it's not already there.

Change-Id: I8a2b34cd051919db29facabc1664cf357073b1d7
Enhance multipath parsing

The output of the multipath command is not always parseable from
the current implementation. This causes attach to fail.

Fixes Bug: #1184861

Change-Id: I1afa96a695b1008672226e7e76eb8e0feca52578
_s3_create handles image being deleted

Change so _s3_create handles the image it is creating
being deleted while it is creating it without logging a stacktrace
and instead just logging a simple message explaining what happened.

Fixes bug 1084703

Change-Id: I9d984dd1cf4f393010493cacd048d20ad5225db8
Raise exception instances not exception classes

Replaces deprecated syntax of raising an exception class
with raising an instance of the exception class instead

Change-Id: Icb127c6a93de7faab5db8d1f037095bbbb82a229
compute.api call conductor ComputeTaskManager for live-migrate

Before the compute api called the scheduler to perform
live migrate. This change makes the compute api call the
conductor, which in turn calls the scheduler.

For those not using the conductor service,
this does not add any extra rpc calls.

This change in control flow means we can look to move
live-migrate more related rpc calls into the conductor
from both schduler driver and compute manager.

part of blueprint live-migration-to-conductor
Change-Id: I081c5e090921d69878d044839616a48f198ecb7d
Cosmetic fix to parameter name in DB API

service_destroy() was using instance_id instead of service_id.

Change-Id: Id1a839b16f4513d91b7014b082637a644346b664
Add power_on flag to virt driver finish/revert migration methods

This patch adds a boolean power_on flag to the virt driver
finish_migration and finish_revert_migration methods to indicate whether
or not to power on the instance as part of the resize/migrate operation.
The default is to power on the instance.

Related to bug 1177811

Change-Id: I76c7d6912eda2c333554855a8956bd0fbb1e8b6d
Set resized instance back to original vm_state

You can resize an instance when it's in the ACTIVE or STOPPED state but
the code currently always finishes the resize (either confirmed or
rejected) by putting the instance into ACTIVE state. This change
saves the original vm_state and uses it to restore the state on the
instance after the resize is confirmed or rejected.

With this change, the resize flow will never automatically power on an
instance that is originally shutoff. The user, however, can manually
power on the resized instance to test it before confirming or rejecting
the resize. If the user powered on the instance and confirmed the
resize, then this change will leave the instance active. If the user
powered on the instance and then rejected the resize, this change will
stop the instance when it finishes the revert operation.

Related to bug 1177811

Change-Id: I19fa61d467edd5a7572040d084824972569ef65a
Make pylint ignore nova/objects/

The dynamic nature of our object model is going to cause lots of
heartache for pylint, especially in the actual definitions. This
just excludes that whole directory from pylint's view, which will
limit the heartache to only everywhere objects are actually used.

Related to blueprint unified-object-model

Change-Id: I7f1a4b10b8a5098aab2ab2e8ea5da15ec43f0e2e
Merge "compute.api call conductor ComputeTaskManager for live-migrate"
Merge "Don't update DB records for unchanged stats."
Merge "Make pylint ignore nova/objects/"
Merge "Raise exception instances not exception classes"
Merge "Remove tempest hack for create/rebuild checks"
Merge "Fix error in instance_get_all_by_filters() use of soft_deleted filter"