Remove update_service_capabilities from nova

From the comments of update_service_capabilities, it is said that
once publish_service_capabilities was removed, then we can begin the
process of its removal.

publish_service_capabilities has been removed in patch
I31c21055163e94b712d337568b16b9b7a224b52f, so we can remove
update_service_capabilities now.

Change-Id: I46be33462321f5e3ff0904bdff8dbfe2fbe115cd
Closes-Bug: #1263569
Add alias as prefix for flavor_rxtx v3

As v3 api rules, the extended attribute should be with extension
alias as prefix. So fix this case for flavor-rxtx v3 extension.

Closes-bug: 1252986
DocImpact

Change-Id: I9f5984a406d039245db4bef2df53cfe10a331cc2
Update class/function name for test_extended_availability_zone.py

In test_extended_availability_zone.py, it was using class name and
function name as following:
1) ExtendedServerAttributesTest
2) assertServerAttributes

This is not accurate as this test file is for availability zone,
this patch was change the above two names to:
1) ExtendedAvailabilityZoneTest
2) assertAvailabilityZone

Change-Id: I52d6ebcb1388fc10ac92d66cae166391d46e68c1
Improve error message in services API

The awkward grammar of the original error message was making i18n
translations hard.

Change-Id: I2ff98f2d3585d5f1ccf0deb552e73c452393f124
Closes-Bug: #1266620
Allow _check_instance_build_time to hit db slave

If your deployment has a slave configured, _check_instance_build_time
will read against the db slave. If you have no slave configured
then behavior remains unchanged.

Change-Id: I2e19bef2b4231a711f473807a14a13398cbc7278
Partially-implements: blueprint periodic-tasks-to-db-slave
Fix race conditions between imagebackend and imagecache

The race may occur in the situation:
* There is a base file that is not used for a long time enough
  to be removed by imagecache.
* imagebackend is provisioning a virtual disk from the base file.
* imagecache is removing the base file.

Then, the base file is removed even though it is about to be used.

To fix this, these changes are in this patch:

* A new function imagecache.refresh_timestamp(base_file) updates
  the owner and mtime of the base file with the lock dedicated
  to the base file.
* imagebacked calls refresh_timestamp(base_file) before provision
  a disk from the base file.
* imagecache.ImageCacheManager._remove_base_file(base_file) uses
  the same lock as used by refresh_timestamp()

Closes-Bug: #1256838
Change-Id: I7c897cf6071d87a2c4532fb3a73863d649d02782
hyperv: Retry after WMI query fails to find dev

During long stress runs the WMI query that is looking for
the iSCSI device number can incorrectly return no data.
If the query is retried the appropriate data can then be
obtained.

This commit adds a retry loop, calling
basevolumeutils.get_device_number_for_target to avoid this situation.
It also handles the case where the devices list returned in
get_device_number_for_target is empty.  The retry loop is
implemented with new mounted_disk_query_retry_count and
mounted_disk_query_retry_interval configuration options.

Unit tests have been added to check the good and bad paths for
get_mounted_disk_from_lun.

DocImpact
Closes-bug: 1247901
Change-Id: I082c4b1694efcd20cce65293cd330b7a0cf7d470
disk/api.py: resize2fs fails silently + adds tests

+ The method disk.api.resize2fs fails silently and should
  writes some information in the log.
+ Adds missing tests to disk.api.resize2fs

Change-Id: I4edd88fb85a73c75628958e3f2ea668c0d3cad89
Closes-Bug: #1270088
Increase the default retry for iscsi connects

We've had a number of gating failures resulting from
attach failures.  Looking through past gate logs it
seems we've had a pretty wide variance in how long it
takes the actual iscsi attach and mount to complete
before being available in dev/disk-by-id.

This patch simply bumps the retry count from 3 to 5,
the result will be going from a max of 14 seconds to wait
for attach to 55 seconds total before failing.

Change-Id: Ib46da71c964da977471cc6635adc5d92ff3beb9c
Closes-Bug: 1270608
Merge "disk/api.py: resize2fs fails silently + adds tests"
support stevedore >= 0.14

the previous mocks made some very specific assumptions about the
behavior of an internal private method in stevedore, which changed
in 0.14. Make the mocks more flexible so they work regardless.

Change-Id: I5063c652c705fd512f90ff3897a4c590f7ba7c02
Merge "Remove update_service_capabilities from nova"
Merge "Update class/function name for test_extended_availability_zone.py"
Merge "Allow _check_instance_build_time to hit db slave"
Merge "support stevedore >= 0.14"
Merge "Improve error message in services API"
Merge "Increase the default retry for iscsi connects"
Merge "hyperv: Retry after WMI query fails to find dev"
Merge "Fix race conditions between imagebackend and imagecache"
Merge "Add alias as prefix for flavor_rxtx v3"