OpenStack projects are no longer being tested under Python 2.6, so
remove the trove classifier implying that this project supports 2.6.
Change-Id: I9047beded251de0083bf6b6d48688e40872437d1
When running multiple attach volume operations with multiple
volumes and multiple VMs, a wrong volume could end up being
attached to a VM. To fix this, connect_volume and disconnect_volume
should be locked.
Change-Id: I47e94a945938123a913aee9d52d36f8ee088955a
Closes-Bug: #1524989
This allows users of the RBD client to use a 'with' statement and bound
the scope of a client connection to a python block, which makes for
lovely looking code under the right conditions.
Change-Id: I455e8b6063dff36794d8aec7922ee1f26b3cf298
In case IPv6 address is present in location os_brick would fail to
get correct path as brackets are forbidden chars in udev and are removed.
Closes-Bug: #1449492
Change-Id: I965ce7bb9bc2b2c3fdd240d998441f8b06b36934
The requests package is being used inside os-brick. While pretty much
every consumer of the os-brick library also uses requests, so we are fairly
safe, we should still list it in the requirements to make absolutely sure.
Closes-bug: #1507477
Change-Id: Id1a1d1faf057231e6358f902f35aa66f2e9e681a
If multipath device name is found, we should print log message
like "Find multipath device name for ..."
Change-Id: I1a2143848d16c505cf9af84a417014311048a20a
Whenever find_multipath_device() was being called on an action
it would include the action as part of the device name. This patch
creates a list of actions and checks that they aren't preceding
the device name before parsing the rest of the device information
in find_multipath_device().
This patch is based on the approach that was taken in Nova until
it was abandoned in favor of the change being made in os-brick
instead. The Change-Id for the Nova change:
I8f1f769bb15ec10054e2fd73c4cf621389014cf1
Change-Id: I12a10ba189e4987cdf07bebdadbac0d4587c01d1
Closes-Bug: 1466444
The parameter 'iops_limit' in the ScaleIO connector
is wrong. The correct parameter should be 'iopsLimit'.
Because of this error, the iops of the volume will stay
unlimited even if the user sets a limit on the iops.
This patch fixes this error.
Change-Id: I6b9212e9046bf3e2c9bbbde6354c298b359de3a6
Closes-Bug: #1521396
FCoE devices have slightly different sysfs device paths to FC devices :
/sys/devices/pci0000:20/0000:20:03.0/0000:21:00.2/net/ens2f2/ctlr_2/
host3/fc_host/host3
As with FC devices we want the domain🚌device.function of the device.
For FCoE devices this is listed prior to `net`.
Change-Id: I2e46af1679982964c0d90289bcf1a1fc702fcb15
The purpose of this patch is to add new APIs to os-brick Connector objects
to see how we can help validate the discovered volumes. By adding a few
new APIs into the Connectors, we can ask the Connector objects to give us
a list of paths on the system that are associated with a volume.
Then after doing a disconnect, which happens during nova live migration
as well as normal volume detaches, we can fetch the list of all volumes, and
make sure the original volume paths don't exist in the list of all
volumes for that type. Therefore verifying that when a volume
is removed, it doesn't leave any paths on the system behind.
This patch adds the following new APIs to the Connector objects:
* get_volume_paths() - fetch a list of paths on the system for a volume.
* get_search_path() - get the path on the host where the Connector looks for
volumes.
* get_all_available_volumes() - Get the entire list of volumes in the search
path for the given protocol type (iSCSI, FC)
Cinder Spec:
https://review.openstack.org/#/c/204180/
Implements: blueprint brick-fetch-paths
Change-Id: Ibf73545d81797ffeedd7d4bf10c6d11c63fce923
If you run the unit tests with a live /dev/disk/by-path
on the system, the tests fall through the skipUnless
decorators. This exposed some failures in the expected
commands, which were incorrect. The expected commands
in _test_connect_volume had assumed the multipath set of
commands which included a rescan.
This patch removes the rescan expected tests, as those
are only run for multipath related attaches.
Closes-Bug: #1514611
Change-Id: If2e77af2a63c33df2f190f77b6ba4cea0bc31b31
This patch adds the SCSI WWN for iSCSI and FC based volumes
in the return for connect_volume calls. This WWN can be used
to uniquely identify the volume.
Change-Id: Ic98cdd700bc9fa3467e8c7f3cdaa70c12414ad75
Implements: blueprint brick-scsi-wwn
Other projects have updated to 1.8 or later for the minimum
tox version (nova, neutron), so we should probably do the
same.
Change-Id: Iad3c452a3e5935894e0fd9748bcb55fde5fcd04f
Sometimes the multipath devices would be read-only block devices which
would end up causing problems when anything tries to write to them. We
now will wait and rescan a few times to try and get them to become
read-write before moving on with the attach.
Change-Id: If3c17348f6a6e766f811fcd446c03c82e5c8a883
Partial-Bug: #1495701
device_info is optional and in some cases could be None.
We should check it and don't fail in case if it is None.
Change-Id: Ib970eebc7c57216fd5008ec35b8165d8633de809
This patch fixes an issue where every iSCSI login attempt fails
and the code doesn't raise an exception. It used to silently fail
with nothing but a log warning.
The iSCSI connector now checks to make sure that at least 1 of the
N potential target portals login attempts is successful.
Change-Id: Id248c3f1b12385c9d26150c6aa9dd504c01d0df8
Closes-Bug: #1464988
This patch changes the unit tests runs via tox to
use os-testr as the tool to run the tests. Cinder is
already using ostestr. This also by default enables
parallel testing.
Change-Id: Iab20bdc2cbd454de2f1d66cea3f68b40b161dc9d
LOG.warn is deprecated. We were still using it in a few places.
This updates those few instances to use the non-deprecated
LOG.warning instead.
Change-Id: I71cf65b3ec493b88fc7ac4b309852ea9f99a9064
Trivial fix to change the "vg*s*-cluster" to the correct "vgc-cluster"
required for the HGST cluster management software.
Change-Id: I1510986a321f60fd5588fea7613dc2a4ba11430d
Closes-Bug: 1498625