Catch ProcessExecutionError when building config drives.

There's not a lot we can do here, the instance is invalid. However,
the better log message will hopefully make this easier for operators
to diagnose.

Partially addresses bug 872489.

Change-Id: Ib650cb114e57956bfe911370dd52aa4fdd4adc78
Improve virt/disk/mount/nbd test coverage.

Change-Id: I7d1c413b7a492c078ae10c840c4c20f8cf69d6a5
Set instance_ref['node'] in _set_instance_host_and_node

instance_ref is finally passed to ComputeDriver.spawn().
The instance_ref['node'] must be set before spawn() is called
since a ComputeDriver managing multiple nodes may use the value
in spawn(). Without this patch, _set_instance_host_and_node()
updates only 'host' and 'launched_on' in instance_ref although
it updates 'host', 'launched_on' and 'node' in DB.
It is natural and necessary that we set instance_ref['node'] there.

blueprint general-bare-metal-provisioning-framework

Change-Id: I5cdf7d9a9d59d30a9e2f1d15c9ec74428828570c
Revert "Simplify how ephemeral disks are created and named."

This reverts commit e28d7870fa8633fddd5fe92d2fbcc34ae392bd85.

This needs another attempt. Associated with bug 1087028.

Change-Id: I5822b8934d4a944299ef32960bc56718193c32c3
Cleanup the test DNS managers.

There is a fair amount of indirection in place here, which could be
trimmed - this patch takes a minimal approach and only causes the
current top level entry to be called, fixing bug 1088761.

Change-Id: Ifd80f99561eb95257f2a1bf45a39f678a2c1f59c
Move api_paste_config option into nova.wsgi

The api_paste_config option is only used in nova.wsgi so we can
have it be registered there too.

blueprint: scope-config-opts
Change-Id: I438102b2524bd96faf8392f3ba600235ce7116a4
Move api_rate_limit and auth_strategy to nova.api

api_rate_limit is only used in nova.api.auth and auth_strategy is only used in
one other place. Scoping both options to nova.api.auth makes their purpose more
clear.

blueprint: scope-config-opts
Change-Id: I03f35c0e38239ecd96e8c304527530d42ab4097e
Move cache_images to nova.virt.xenapi.vm_utils

While the cache_images option sounds hypervisor agnostic, it is actually
xenapi specific. Move it into the xenapi driver makes this much more
clear.

blueprint: scope-config-opts
Change-Id: I5c86159f638fc30ee0158a249c91cf29d46cdbb5
Move some options into nova.image.glance

The glance_api_servers and glance_api_insecure options are only used in
nova.image.glance. The only other place that glance_num_retries is used
is nova.virt.xenapi.vm_utils.

blueprint: scope-config-opts
Change-Id: I2cd0f62e43379bc94c95f85ab5b4aac9faf6c4f7
Move zombie_instance_updated_at_window option

The zombie_instance_updated_at_window option is only used in
vm_vdi_cleaner so declare it there.

blueprint: scope-config-opts
Change-Id: I8d95fbd858f8afe855c2b559dea6995497d8f682
Move monkey patch config opts into nova.utils

The monkey_patch and monkey_patch_modules configuration options are
only used in nova.utils, so move them there.

blueprint: scope-config-opts
Change-Id: Ibfc34be46306041951ab0142ab737686eacae9da
Properly scope isolated hosts config opts

The isolated_hosts and isolated_images options are only used by the
isolated hosts scheduler filter, so move them there.

blueprint: scope-config-opts
Change-Id: Ia89b613d7d934a0072f262add039fe14ef236334
Add coverage extension to nova API.

This adds a new extension to nova API. It allows for internal use of
Ned Batchelder's coverage_ module. (what is used for the nosecoverage
plugin)

The api allows for coverage to be enabled and a report to be output to
a file with API calls. The intended use of this is for instrumenting
client based tests like Tempest. Coverage on tempest will not give
information regarding how much of nova is covered.

Implements: blueprint coverage-extension
Change-Id: I47497f5be3fd5956250f2dcd1630c86c72725ce8
Signed-off-by: Matthew Treinish <treinish@linux.vnet.ibm.com>
Implement an XML matcher

Uses the "Matcher" interface of the testtools assertThat() call to
compare XML document strings safely.  This will result in more
useful error results and will ignore attribute ordering issues
that caused problems with tests affected by lxml version skew.

Also converts test_libvirt_config to use XMLMatches, to
demonstrate its use.

Change-Id: I7821557a73eb8b5aca823cfccd02b4b660e0ffdb
Merge "Improve virt/disk/mount/nbd test coverage."
Merge "Revert "Simplify how ephemeral disks are created and named.""
Merge "Add coverage extension to nova API."
Merge "Catch ProcessExecutionError when building config drives."
Merge "Set instance_ref['node'] in _set_instance_host_and_node"
add and removed fixed ip now refresh cache

fixed bug 1089154

Change-Id: I007c9f1a31321e613e7dc2afb8ec090b608ec2df