Replace detail for explanation msgs on webob exceptions.

When using detail=msg, a default msg is set and returned.
To let the user know the real cause of the error explanation arg
shall be set with the appropiate error message.

[For example]
$nova --os-compute-api-version 3 service-disable --reason 'A...' host srv
"The server could not comply with the request since it is either malformed
or otherwise incorrect."

By setting the explanation we get:
$nova --os-compute-api-version 3 service-disable --reason 'A...' host srv
ERROR: Disabled reason contains invalid characters or is too long

Change-Id: I380916b110cd021aefcbedd2f943155329860fe7
Fix the sample and unittest params of v3 scheduler-hints

The API samples of scheduler-hints contains "hypervisor" and "near"
attributes, but the attributes do not exist in the scheduler-hints
parameter of "create a server" API. This patch changes them to the
existing "same_host" attribute.
This patch also changes the attributes of some unit tests of the v3
scheduler-hints by the same attribute.

This nonexistent attributes are found during bp/nova-api-validation-fw
works. The implementation needs this change because it will deny the
unexpected attributes, which are not defined with API schema, in API
parameters.

DocImpact
Closes-Bug: #1278279

Change-Id: I8542f44b325ba909fdff8b569146c0015b150291
VMware: fix instance lookup against vSphere

Modifies the logic to search the vsphere vm for a given
instance. The change now makes use of the config.extraConfig
property to search for the instance.

Change-Id: Id11f44b9792f196ad627879d082ad829869efcdf
Closes-Bug: #1257038
Catch HostBinaryNotFound exception when updating a service

When updating a service with a wrong host or binary name,
HostBinaryNotFound exception is raised. However this exception
isn't caught and the ServiceNotFound exception which won't happen
here is caught instead.
This patch fixes this bug.

Change-Id: I64b138bad74c39d087addcd766b890c4076a2ce8
Closes-Bug: #1273139
libvirt: setting a correct driver name for iscsi volumes

Setting LibvirtISCSIVolumeDriver class to be identified
as a block device to determine the correct driver name.

Change-Id: Idfb89d051ccadab1d4c4b05b817b085e094ff992
Closes-Bug: #1273496
libvirt: remove explicit /dev/random rng default

libvirt (or rather qemu) will default to /dev/random if no rng device
path is specified i.e.

  <rng model='virtio'>
    <backend model='random'/>
  </rng>

It's preferable for us to not duplicate this default to allow for a
future where libvirt or the hypervisor needs to make more intelligent
decisions about the default device to use.

Also, improve the unit tests to catch this issue.

Change-Id: Ia0f922f7de575496972b4dfa9d56aa22205f1758
Remove blank space after print

Check nova code, remove blank space after print.

Change-Id: I0d7f1ebe6e83189a51bf714a2f03afd8a91d515c
libvirt: image property variable already defined

A variable image_meta_prop with properties from a glance image
is already defined and can be used.

Change-Id: I5a3bab2d944c60ed744bbfc79fb9d5ad195c0d69
Update server_diagnostics to use instance object

Update the server_diagnostics API to get an instance object and then pass it
through the system down to the virt driver.

Converting the get_diagnostics() call in the compute manager also updates one of
the driver.get_info() calls to take an instance object.  Most had already been
converted.  There was one other stray case in the compute manager where it was
still taking an instance primitive, so this patch hits that one too to finish
the conversion of get_info() while we're at it.

Part of blueprint virt-objects

Change-Id: I20b324039c20f5b1fde4d55df2d679b7fb094573
Merge "Remove blank space after print"
Merge "libvirt: image property variable already defined"
Merge "Replace detail for explanation msgs on webob exceptions."
Merge "VMware: fix instance lookup against vSphere"
Updated from global requirements

Change-Id: I19776b5aa16b731c0ad8cf6e6512dfb047d62575
Merge "Fix the sample and unittest params of v3 scheduler-hints"
Merge "Update server_diagnostics to use instance object"
Merge "Catch HostBinaryNotFound exception when updating a service"
Merge "Updated from global requirements"
Merge "libvirt: setting a correct driver name for iscsi volumes"
Merge "libvirt: remove explicit /dev/random rng default"