Allow hard reboots when still attempting a soft reboot

Commit cc0be157d005c5588fe5db779fc30fefbf22b44d introduced a
regression in the reboot code. Previously, a hard reboot could be
performed when an instance was in soft reboot.

This fixes the regression by allowing a hard reboot when the instance
is in one of the two new task states.

Closes-bug: 1362799
Change-Id: Id8aaf852b0cccb75a79794a8bf9eb94e21550b81
Return hydrated net info from novanet add/remove_fixed_ip calls

Compute manager expects hydrated network info from network_api

Change-Id: I36e48742144555004cbd1f71429a943c7e2952b0
Closes-bug: #1350846
Fix integrated test cases for assisted-volume-snapshots

qcow is not a valid type of snapshot in real environment,
the require type should be qcow2 instead of qcow.
Change-Id: I0fc8e90913699074cd997f5c1e0693372436d14f
Add unit test to aggregate api

Add unit test to aggregate update api.

Change-Id: Iecaacdec726200ecd6e486e02474280f7e9e4c57
check the block_device_allocate_retries

we need to check the value of the configuration item
block_device_allocate_retries in order to ensure to
retry at least once,done like that configuration
item network_allocate_retries

Change-Id: Ia5b65bd160cb4e740d21c1b51d234e14e33135e7
Closes-Bug:#1363558
Remove unused config "service_down_time" reference

service_down_time was used in service API and it's not used.
It was removed at commit I1e7e8f7519ec627b96736f74ee7123d101973544.

Change-Id: Ibf9c7082e148a3253051e5d60eacc4d891420ae7
disk/vfs: make docstring conventional to python

Updates docstring to make it conventional to Python

Change-Id: I5a9383be77a639a3cc25f727f59cddfd22889d70
XenAPI: run vhd-util repair if VHD check fails

We can hit issues with corrupted VHDs if we copy a VHD while XenServer
is performing other operations. This happens because there are times
when we copy the VHD chains while XenServer is still performing a
coalesce of the VHD chain.

In most cases, vhd-util should be able to safely repair any metadata
corruption. It can copy the copy of the VHD footer at the front of the
VHD file and add it at the bottom on the VHD file. There is no VM data
loss, due to the way the coalesce happens, but the chain will be bigger
than it would be both before and after the coalesce.

This does not, however, ensure that snapshots are valid before uploading
them to glance. But should you launch a corrupted snapshot, this change
would fix up the snapshot, and allow it to boot correctly.

Closes-Bug: #1362595

Change-Id: I88b737d7e97964a9db5ccf2c39dea7fd0701ead4
Add multinic API unit test

Multinic api unit test is not sufficient, so this patch
adds a testcase for removing a fixed IP when the IP is not
found.

Change-Id: Ice04806269a92244bd068b90e9934eaedb17a1b4
Add support for hypervisor type in IronicHostManager

Unlike the default HostManager the IronicHostManager doesn't pass
hypervisor attributes of the compute_node into the HostState.

Adding support for hypervisor_type makes it easy to use the
compute_capabilities filter in a combined Ironic/virt system
with a simple extra_specs value on flavors.

For completeness the following values are added:
hypervisor_type
hypervisor_version
hypervisor_version
cpu_info
supported_instances

Change-Id: I1c81bb9726597609c4e5918eb15b4f2a055e7912
Closes-Bug: #1370578
Add exists check to fetch_func_sync in libvirt imagebackend

This change adds a path exists check to fetch_func_sync to deal with
cases where a thread is waiting to acquire the lock while another
thread has the lock and is downloading the same image.  Without this
check the same image template will be downloaded multiple times.

Change-Id: Ib410903c7fd9d6954a8082391f89b42bac6a20d3
Closes-Bug: #1298420
Change "is lazy loaded" detection method in db_api test

This changes the test_security_group_get_no_instances() method to use a simpler
method of determining if instances is loaded on a security_group after a get
operation.

Change-Id: Ifea6c20bcaa201167ef5679f3ddb9ae8141bbbf5
Closes-Bug: #1349147
Fix Broken links in devref/filter_scheduler.rst

There were broken links on the following class
'AggregateNumInstancesFilter', 'RamWeigher' in
document filter_scheduler.html. Fix these broken
links.

Change-Id: I3cac48a6ad466a32a88c23c9f128e66dae5889ee
Closes-Bug: #1363955
Merge "Change "is lazy loaded" detection method in db_api test"
Merge "Add multinic API unit test"
Merge "check the block_device_allocate_retries"
Merge "Fix Broken links in devref/filter_scheduler.rst"
Merge "XenAPI: run vhd-util repair if VHD check fails"
Merge "Fix integrated test cases for assisted-volume-snapshots"
Merge "Add exists check to fetch_func_sync in libvirt imagebackend"