Enable live block migration when using iSCSI volumes

Fix for bug 1160323.

DocImpact
Depends on a version of XAPI supporting relax-xsm-sr-check.
Currently no release versions support this, so the change at
https://github.com/xen-org/xen-api/pull/1116 would need to be applied
to the source to enable this.  XenServer 6.2 is expected to
support this mode, and possibly some future hotfixes for XenServer 6.1.

It also depends on a configuration change which must be documented and added to devstack:
* Set "relax-xsm-sr-check = true" in /etc/xapi.conf

This commit makes the following changes:
* Attach the SR on the destination host prior to migrate
* Returns the SR-ref from the pre_migrate call (API change)
* Populates the XS VDI map with the sr-ref on the destination host
* Removes the connection to the SR from the source host post-migrate
* Added plugin to determine if iSCSI block migration is enabled

Associated tempest test at https://review.openstack.org/#/c/26478/

Change-Id: I917d9cf094190d636f4b9e14f6c8e728ff85af0e
Fixes: bug 1160323
Adds instance root disk size checks during resize

Fixes bug: #1163844

The Hyper-V driver does not support disk resizes to a smaller size.
This patch verifies the disk size compatibility before the migration
starts in order to avoid data losses.

Change-Id: Ie99bf8779d583e97b911c9a136cee1bca9a1ecdc
Fixes KeyError bug with network api associate

Fixes bug in network api associate function where it would always
raise a KeyError when associating or disassociating a project.

Fixes bug 1171284

Change-Id: Iae0e57e0a961b8a3377b38dad72094188755a3e8
Fix zookeeper import and tests

Import zookeeper.membership rather than zookeeper.membersip.
Also fixed some issues with setting up the tests for the zookeeper
servicegroup driver.  Config options were not being set before
initializing the driver leading to failures.

There is no added test for this because the bug is indistinguishable
from not having the zookeeper python modules installed, which leads to
skipping these servicegroup tests.

Bug 1177776

Change-Id: Idd6dca2e03169399b930cc1fc1a85636497cb0b5
Change type of cells.deleted from boolean to integer.

Fixes bug #1168490

Migration 152 changed other tables' deleted column from boolean
to integer, but cells got missed.  SQLite and MySQL are weakly-
typed enough that mixing integers and booleans is allowed, but
PostgreSQL is not, and this causes an error.

Migration 179 is a copy of migration 152, except applied only to
the cells table.

Change-Id: I85c39765edc206d38d21827ab54e1371155b9557
Fix variable referenced before assginment in vmwareapi code.

Add unitests for VMwareapi vm_util.
fix bug #1177689

Change-Id: If16109ee626c197227affba122c2e4986d92d2df
Fixes typo in server-evacuate-req.xml

The element name should be evacuate instead of rescue
Fixes bug 1178280

Change-Id: I3eed81c01cb9948c978f405bb3b2748e1094d488
xenapi: cleanup vdi when disk too big exception raised

In addition add some unit tests to that area of the code.

fixes bug 1015423

Change-Id: If33cbb395bc39cbb6e8b2ecbd2d6ad3a26b6b301
Merge "Fix variable referenced before assginment in vmwareapi code."
Add pointer to compute driver matrix wiki page.

Change-Id: I20a6cfdfaf1b03d6a0d9b793534a4f07f99e9ae1
Merge "Fixes typo in server-evacuate-req.xml"
Merge "Change type of cells.deleted from boolean to integer."
Merge "Add pointer to compute driver matrix wiki page."
Merge "xenapi: cleanup vdi when disk too big exception raised"
Imported Translations from Transifex

Change-Id: I6682277f9796779773f60336e240487e6409f0f7
Record smoketest dependency on gFlags

The smoketests currently have a dependency on gFlags. Long term, this should
be converted to use openstack.common.cfg; but in the near term, we should
record this existing dependency.

Fixes bug 1174953

Change-Id: I465abc6a4a2e8f7ebd1fe70ad239c760960a82ed
Merge "Record smoketest dependency on gFlags"
Merge "Fixes KeyError bug with network api associate"
Merge "Fix zookeeper import and tests"
Merge "Enable live block migration when using iSCSI volumes"