JovianDSS: add multiattach and 16K block support

Added multiattach support for Open-E JovianDSS driver
Added 16K block size support for Open-E JovianDSS driver

Implements: blueprint open-e-joviandss-add-multy-attach-support
Change-Id: I06f2032a5596f2ac4104ec496b4466c695d3fad6
This commit is contained in:
andrei.perepiolkin 2021-08-31 06:56:39 -04:00
parent 8930fbac3c
commit 3baa9ad096
4 changed files with 17 additions and 7 deletions

View File

@ -1282,14 +1282,15 @@ class TestOpenEJovianDSSDriver(test.TestCase):
location_info = 'JovianISCSIDriver:192.168.0.2:Pool-0' location_info = 'JovianISCSIDriver:192.168.0.2:Pool-0'
correct_out = { correct_out = {
'vendor_name': 'Open-E', 'vendor_name': 'Open-E',
'driver_version': "1.0.1", 'driver_version': "1.0.2",
'storage_protocol': 'iSCSI', 'storage_protocol': 'iSCSI',
'total_capacity_gb': 100, 'total_capacity_gb': 100,
'free_capacity_gb': 50, 'free_capacity_gb': 50,
'reserved_percentage': 10, 'reserved_percentage': 10,
'volume_backend_name': CONFIG_BACKEND_NAME['volume_backend_name'], 'volume_backend_name': CONFIG_BACKEND_NAME['volume_backend_name'],
'QoS_support': False, 'QoS_support': False,
'location_info': location_info 'location_info': location_info,
'multiattach': True
} }
jdssd.ra.get_pool_stats.return_value = { jdssd.ra.get_pool_stats.return_value = {
'size': 100 * o_units.Gi, 'size': 100 * o_units.Gi,

View File

@ -45,11 +45,13 @@ class JovianISCSIDriver(driver.ISCSIDriver):
1.0.0 - Open-E JovianDSS driver with basic functionality 1.0.0 - Open-E JovianDSS driver with basic functionality
1.0.1 - Added certificate support 1.0.1 - Added certificate support
Added revert to snapshot support Added revert to snapshot support
""" 1.0.2 - Added multi-attach support
Added 16K block support
"""
# ThirdPartySystems wiki page # ThirdPartySystems wiki page
CI_WIKI_NAME = "Open-E_JovianDSS_CI" CI_WIKI_NAME = "Open-E_JovianDSS_CI"
VERSION = "1.0.1" VERSION = "1.0.2"
def __init__(self, *args, **kwargs): def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs) super().__init__(*args, **kwargs)
@ -117,7 +119,7 @@ class JovianISCSIDriver(driver.ISCSIDriver):
msg = (_("Unable to identify pool %s") % self._pool) msg = (_("Unable to identify pool %s") % self._pool)
raise exception.VolumeDriverException(msg) raise exception.VolumeDriverException(msg)
valid_bsize = ['32K', '64K', '128K', '256K', '512K', '1M'] valid_bsize = ['16K', '32K', '64K', '128K', '256K', '512K', '1M']
if self.block_size not in valid_bsize: if self.block_size not in valid_bsize:
raise exception.InvalidConfigurationValue( raise exception.InvalidConfigurationValue(
value=self.block_size, value=self.block_size,
@ -747,7 +749,8 @@ class JovianISCSIDriver(driver.ISCSIDriver):
'reserved_percentage': int(reserved_percentage), 'reserved_percentage': int(reserved_percentage),
'volume_backend_name': self.backend_name, 'volume_backend_name': self.backend_name,
'QoS_support': False, 'QoS_support': False,
'location_info': location_info 'location_info': location_info,
'multiattach': True
} }
LOG.debug('Total capacity: %d, ' LOG.debug('Total capacity: %d, '

View File

@ -838,7 +838,7 @@ driver.netapp_solidfire=complete
driver.nexenta=missing driver.nexenta=missing
driver.nfs=missing driver.nfs=missing
driver.nimble=complete driver.nimble=complete
driver.opene_joviandss=missing driver.opene_joviandss=complete
driver.prophetstor=missing driver.prophetstor=missing
driver.pure=complete driver.pure=complete
driver.qnap=missing driver.qnap=missing

View File

@ -0,0 +1,6 @@
---
features:
- |
Open-E JovianDSS driver: Added multiattach support.
- |
Open-E JovianDSS driver: Added 16K block size support.