Fix retyping attached volumes requiring migration

Modifies retype method so that volume db entry only updated if the
volume isn't migrated.

The migrate_volume_completion method is made responsible for detaching
the old volume and attaching the new one. This takes the requirement
from nova because the calls need to be done in a certain order which
isn't guaranteed when performed by nova.

attach_volume now marks the migration_status as complete because it is
the final action by cinder.

Change-Id: Ia15636893be4f0077a4f75e746a8ab1a8798c44b
Partial-Bug: 1316079
Support Volume Num Weighter

Currently cinder support choosing volume backend according to
free_capacity and allocated_capacity. Volume Num Weighter is
that scheduler could choose volume backend based on volume number
in volume backend, which could provide another mean to help
improve volume-backends' IO balance and volumes' IO performance,
see details in ref [1] and [2].

blueprint support-volume-num-weighter

Ref:
[1]https://blueprints.launchpad.net/cinder/+spec/support-volume-num-weighter
[2]https://review.openstack.org/#/c/99683/

Change-Id: Id9275ed954f1b35ee8d7bee0f0b61cc3a7c48f63
Fix host option isn't set when using multiple backend

When using multiple volume backend, and volume driver is
cinder.volume.drivers.block_device.BlockDeviceDriver, host
option isn't set so a call to get volumes of a host returns none,
This patch changes to use self.host instead of self.configuration.host

Change-Id: Ide34ed29adad14b778b1a7388e9dc313241fa243
Closes-Bug: 1332909
Merge "Support Volume Num Weighter"
Correct lvm_mirrors help message

The description is not correct if someone sets
lvm_mirrors=0.  Also clarify LVs vs. lvms.

Change-Id: I7ec74fc8beaef5e638bc1a5dac3d7d97f1c474d3
Merge "Fix host option isn't set when using multiple backend"
Merge "Correct lvm_mirrors help message"
Imported Translations from Transifex

Change-Id: I7295f2dda30117f7fca31c83aae799f885756cc4
Merge "Fix retyping attached volumes requiring migration"
Imported Translations from Transifex

Change-Id: Ic5c214bb7e55322c1b32c52691535bef4ac23937
Updated from global requirements

Change-Id: I218171b2e3581ea05a14719a821c131dd47c8eb5
Merge "Imported Translations from Transifex"